Applies ToVisual Studio Ultimate 2012 Visual Studio Premium 2012 Visual Studio Express 2012 for Windows 8 Visual Studio Express 2012 for Windows Desktop Visual Studio Express 2012 for Windows Phone

Úvod

Prenosný knižnice tried problémy môžu nastať, ak nainštalujete program Microsoft Visual Studio 2012 aktualizácia 2. Tento článok popisuje tieto problémy a ich riešenia.

Problém 1

Príznaky

Pri použití prostriedkov vytvoriť prenosné triedy knižnica projekt po inštalácii Visual Studio 2012 aktualizácia 2, zobrazí sa chybové hlásenie:

"System.Type" neobsahuje definíciu pre "Zhromaždenia" a rozšírenie metóda "Zhromaždenia" prijímať prvý argument typu "System.Type" sa nenašiel (vám chýbajú pomocou smernice alebo odkaz na zostavu?)

Poznámka:  Táto chyba sa zobrazuje, keď použijete program Microsoft Visual C#.

"Zhromaždenia" nie je členom "System.Type"

Poznámka:  Táto chyba sa zobrazuje, keď použijete program Microsoft Visual Basic.Tento problém sa vyskytuje, keď jeden z nasledujúcich platforiem spomína v projekte:

  • Microsoft .NET Framework 4.5 a .NET pre Windows Store aplikácie

  • Windows Phone 8 a .NET Framework 4.5

  • .NET Framework 4.5, .NET aplikácií zo služby Windows Obchod a Windows Phone 8

Alternatívne riešenie

Tento problém obísť, odstrániť generované designer kód súboru prostriedkov. Chcete urobiť, dvakrát kliknite na hlásenie a potom postupujte podľa nasledujúcich krokov:

Pre Visual C#

  1. Pridajte pomocou smernice:

    using System.Reflection;
  2. Vyhľadajte nasledujúci kód:

    typeof(Resource1).Assembly

    Tento kód nahradiť nasledujúci kód:

    typeof(Resource1).GetTypeInfo().Assembly

Nasledujúci kód je príkladom, ktorý má tento problém:

        /// <summary>         ///   Returns the cached ResourceManager instance used by this class.        /// </summary>        [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]internal static global::System.Resources.ResourceManager ResourceManager {        get {                if (object.ReferenceEquals(resourceMan, null)) {                    global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("PortableClassLibrary2.Resource1", typeof(Resource1).Assembly);                    resourceMan = temp;                }                return resourceMan;            }        }

Visual Basic

  1. Pridajte pomocou smernice:

    Imports System.Reflection;
  2. Vyhľadajte nasledujúci kód:

    GetType(Resource1).Assembly

    Tento kód nahradiť nasledujúci kód:

    GetType(Resource1).GetTypeInfo().Assembly

Nasledujúci kód je príkladom, ktorý má tento problém:

        '''<summary>        '''  Returns the cached ResourceManager instance used by this class.        '''</summary>        <Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)>  _        Friend Shared ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager            Get                If Object.ReferenceEquals(resourceMan, Nothing) Then                    Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("PortableClassLibrary1.Resource1", GetType(Resource1).Assembly)                    resourceMan = temp                End If                Return resourceMan            End Get        End Property

Problém 2

Príznaky

Nemôžete použiť zdrojov vytvoriť prenosné triedy knižnica projekt po inštalácii Visual Studio 2012 aktualizácia 2. Okrem toho sa môže zobraziť niektorý z viacerých rôznych chybových hlásení. Napríklad, zobrazí sa jedno z nasledujúcich chybových hlásení:

Typ "System.Net.HttpStatusCode" je definovaný v neodkazuje zostavy. Musíte pridať odkaz na zhromaždenie "System.Net, verzia = 2.0.5.0, Culture = neutral, PublicKeyToken = 7cec85d7bea7798e Retargetable = Áno.

Nemožno implicitne konvertovať typu "System.Net.HttpStatusCode" na "System.Net.HttpStatusCode [%programfiles%\Reference Assemblies\Microsoft\Framework\. NETPortable\v4.5\Profile\Profile78\System.Net.Primitives.dll] "

Poznámka: Tento problém sa vyskytuje, keď jeden z nasledujúcich platforiem spomína v projekte:

  • Windows Phone 8 a .NET Framework 4.5

  • .NET Framework 4.5, .NET aplikácií zo služby Windows Obchod a Windows Phone 8

Príčina

Tento problém sa vyskytuje, pretože Visual Studio 2012 aktualizácia 2 bola nainštalovaná po nainštalovaní systému Windows Phone Software Development Kit (SDK) 8.0. Preto boli odstránené nasledujúce súbory:

  • %programfiles%\Reference Assemblies\Microsoft\Framework\.NETPortable\v4.5\Profile\Profile49\System.Net.dll

  • %programfiles%\Reference Assemblies\Microsoft\Framework\.NETPortable\v4.5\Profile\Profile49\System.ServiceModel.dll

  • %programfiles%\Reference Assemblies\Microsoft\Framework\.NETPortable\v4.5\Profile\Profile78\System.Net.dll

  • %programfiles%\Reference Assemblies\Microsoft\Framework\.NETPortable\v4.5\Profile\Profile78\System.ServiceModel.dll

Alternatívne riešenie

Vyriešiť tento problém, spustite opravu programu Visual Studio 2012. Ak to chcete urobiť, postupujte nasledovne:

  1. Kliknite na tlačidlo Štart, na položku Ovládací Panel, programya kliknite na položku programy a súčasti.

  2. Kliknite pravým tlačidlom myši na verziu Visual Studio 2012, nainštalovaný a kliknite na položku zmeniť.

  3. Pri otvorení aplikácie Visual Studio 2012 Setup wizard, kliknite na tlačidlo opraviť .

Poznámka: Ak ste nastavili nové vývojárske prostredie, zabránite, nainštalujete aplikácie Visual Studio 2012 aktualizácia 2 pred inštaláciou Windows Phone 8.0 SDK.

Stav

Spoločnosť Microsoft potvrdila, že ide o problém v produktoch spoločnosti Microsoft, ktoré sú uvedené v časti Vzťahuje sa na.

Potrebujete ďalšiu pomoc?

Chcete ďalšie možnosti?

Môžete preskúmať výhody predplatného, prehľadávať školiace kurzy, naučiť sa zabezpečiť svoje zariadenie a ešte oveľa viac.

Komunity pomôžu s kladením otázok a odpovedaním na ne, s poskytovaním pripomienok a so získavaním informácií od odborníkov s bohatými znalosťami.