私は2つのUWPプロジェクトを持つソリューションを持っています。 1つは共有されたコードを持つライブラリで、もう1つはライブラリを参照する通常のUWPアプリケーションです。ネイティブのネイティブツールチェーンは型を解決できませんSystem.Collections.Generic.ISet
私は、デバッグモードで実行しているアプリを正常に開発しました。今私はストアにそれをパックする必要があります、それはNETが私にトラブルを与えているところです。
私はリリースモードでコンパイルすると、私は次のエラー
C:\Program Files (x86)\MSBuild\Microsoft\.NetNative\x64\ilc\IlcInternals.targets(936,5): error :
System.TypeLoadException: Could not resolve type 'System.Collections.Generic.ISet`1'.
in System.TypeNameParser.ResolveType(Assembly assembly, String[] names, Func`4 typeResolver, Boolean throwOnError, Boolean ignoreCase, StackCrawlMark& stackMark)
in System.TypeNameParser.ConstructType(Func`2 assemblyResolver, Func`4 typeResolver, Boolean throwOnError, Boolean ignoreCase, StackCrawlMark& stackMark)
in System.TypeNameParser.GetType(String typeName, Func`2 assemblyResolver, Func`4 typeResolver, Boolean throwOnError, Boolean ignoreCase, StackCrawlMark& stackMark)
in System.Type.GetType(String typeName, Func`2 assemblyResolver, Func`4 typeResolver, Boolean throwOnError)
in System.Reflection.Adds.TypeNameParser.ParseTypeName(ITypeUniverse universe, Module module, String input, Boolean throwOnError)
in Microsoft.MetadataReader.MetadataExtensionsPolicy20.TryTypeForwardResolution(MetadataOnlyAssembly assembly, String fullname, Boolean ignoreCase)
in Microsoft.MetadataReader.MetadataOnlyAssembly.GetType(String name, Boolean throwOnError, Boolean ignoreCase)
in Microsoft.MetadataReader.MetadataOnlyAssembly.GetType(String name, Boolean throwOnError)
in SerializationAssemblyGenerator.Program.TraverseTypes(GeneratorSettings settings, Dictionary`2& dataContracts, Dictionary`2& jsonDataContracts, List`1& xmlSerializerTypes)
in SerializationAssemblyGenerator.Program.Main(String[] args)
を取得し、それが参照されている自然なことですので、私はISETをたくさん使用しています。 Microsoft.NETCore.UniversalWindowsPlatformパッケージのバージョン5.2.2がインストールされているので、ここで使用できると仮定します。バージョン5.1にダウングレードしようとしましたが、同じエラーが発生します。 System.Collectionsパッケージをインストールした場合と同じです。
'System.Collections.Generic.ISet'はSilverlightアプリケーションに使用される名前空間です.UWPでは使用できません。なぜあなたはこれを使いたいのですか? –
これはUWPに存在するようにデバッグビルドで動作します –
私のコメントを詳しく説明します。数年前、NHibernateは、明示的な実装ではなく、すべてをインタフェースとして宣言するように強く誘導されました。ですから、私はパラメータやプロパティなどのインターフェースを必要とする傾向があります。私はそれが有用であることを発見しました。抽象化がフレームワークに存在するので、私は唯一のものでなくてはなりません。 –