Sissejuhatus
Kaasaskantav rühma teekide probleemid võivad ilmneda pärast installimist Microsoft Visual Studio 2012 Update 2. Selles artiklis kirjeldatakse nende probleemide ja nende lahendustega.
1. probleem
Sümptomid
Ressursside kasutamisel luua kaasaskantav klassi Raamatukogu projekti pärast installimist Visual Studio 2012 Update 2kuvatakse järgmine tõrketeade:
'System.Type' ei sisalda mõiste "Komplekti" ja leitud pole laiendit meetod "Komplekti" accepting esimene argument tüübiga 'System.Type' (on puudu, kasutades direktiivi või komplekti viited?)
Märkus. Saate selle tõrke, kui kasutate Microsoft Visual C#.
"Komplekt" ei ole "System.Type" liige
Märkus. Saate selle tõrke, kui kasutate Microsoft Visual Basic.
See probleem ilmneb siis, kui üks järgmiste platvormide on suunatud projekti:
-
Microsoft .NET Framework 4.5 ja .NET Windows Store apps
-
.NET Framework 4.5 ja Windows Phone 8
-
.NET Framework 4.5, .NET Windowsi poe rakenduste ja Windows Phone 8
Lahendus
Selle probleemi lahendada designer loodud ressursside faili kood. Selleks topeltklõpsake tõrketeade ja seejärel järgige neid samme:
Visual C# jaoks
-
Lisage järgmine direktiivi abil:
using System.Reflection;
-
Leidke järgmine kood:
typeof(Resource1).Assembly
Asendage see kood järgmine kood:
typeof(Resource1).GetTypeInfo().Assembly
Järgmine kood on näiteks, et see probleem on:
/// <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
-
Lisage järgmine direktiivi abil:
Imports System.Reflection;
-
Leidke järgmine kood:
GetType(Resource1).Assembly
Asendage see kood järgmine kood:
GetType(Resource1).GetTypeInfo().Assembly
Järgmine kood on näiteks, et see probleem on:
'''<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
2. probleem
Sümptomid
Ressursside abil ei saa luua kaasaskantav klassi Raamatukogu projekti pärast installimist Visual Studio 2012 Update 2. Lisaks võidakse kuvada üks palju mitmesuguste tõrketeadete kuvamise. Näiteks võidakse kuvada üks järgmistest tõrketeadetest:
Tüüp "System.Net.HttpStatusCode" on määratletud komplekti, millele on viidatud. Tuleb lisada viide koost ' System.Net, Version = 2.0.5.0, Culture neutral, PublicKeyToken = 7cec85d7bea7798e Retargetable = Yes'.
Kaudselt ei saa teisendada tüüp 'System.Net.HttpStatusCode' kuni ' System.Net.HttpStatusCode [%programfiles%\Reference Assemblies\Microsoft\Framework\. NETPortable\v4.5\Profile\Profile78\System.Net.Primitives.dll] "
Märkus See probleem ilmneb siis, kui üks järgmiste platvormide on suunatud projekti.
-
.NET Framework 4.5 ja Windows Phone 8
-
.NET Framework 4.5, .NET Windowsi poe rakenduste ja Windows Phone 8
Põhjus
See probleem ilmneb, sest Visual Studio 2012 Update 2 installimist pärast seda, kui installitud on Windows Phone Software Development Kit (SDK) 8.0. Seetõttu on kustutatud järgmised failid:
-
%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
Lahendus
Selle probleemi lahendamiseks käivitage Visual Studio 2012 parandamise programmi. Selleks toimige järgmiselt.
-
Klõpsake nuppu Start, käsku Juhtpaneel, käsku programmidja klõpsake programmid ja funktsioonid.
-
Paremklõpsake Visual Studio 2012 installitud versiooni ja klõpsake nuppu Muuda.
-
Kui Visual Studio 2012 installiviisard avaneb, klõpsake käsul Paranda .
Märkus. Kui uus arendaja keskkond selle probleemi vältimiseks installige Visual Studio 2012 Update 2 installimist Windows Phone 8.0 SDK.
Olek
Microsoft on kinnitanud, et see probleem esineb jaotises "Kehtib järgmiste toodete kohta" loetletud Microsofti toodetel.