在发布模式下编译UWP应用时,出现以下错误:
System.ArgumentException:具有相同键的项已经被 添加。在System.ThrowHelper.ThrowArgumentException(ExceptionResource 资源),位于System.Collections.Generic.Dictionary
2.Insert(TKey key, TValue value, Boolean add) at System.Collections.Generic.Dictionary
2.Add(位于TKey键,TValue值)处 System.Xml.Serialization.XmlSerializationReaderCodeGen.WriteLiteralStructMethod(StructMapping structMapping) System.Xml.Serialization.XmlSerializationReaderCodeGen.WriteStructMethod(StructMapping structMapping) System.Xml.Serialization.XmlSerializationReaderCodeGen.GenerateMethod(TypeMapping 映射) System.Xml.Serialization.XmlSerializationCodeGen.GenerateReferencedMethods() 在 System.Xml.Serialization.XmlSerializationReaderCodeGen.GenerateEnd(String [] 方法,XmlMapping [] xmlMappings,Type []类型)位于 System.Xml.Serialization.TempAssembly.GenerateAssembly(XmlMapping [] xmlMappings,Type []类型,字符串defaultNamespace,证据证据, XmlSerializerCompilerParameters参数,哈希表程序集, 字符串outputDir,字符串assemblyNameBase,IEnumerable1 referenceDirectories, String intermediateDir, Boolean loadAssembly) at System.Xml.Serialization.XmlSerializer.GenerateSerializer(Type[] types, XmlMapping[] mappings, CompilerParameters parameters, String outputDir, String assemblyNameBase, IEnumerable
1 referenceDirectories,字符串的intermediateDir,布尔的loadAssembly) System.Xml.Serialization.XmlSerializer.GenerateSerializer(Type [] 类型,字符串outputDir,字符串assemblyNameBase,IEnumerable1 referenceDirectories, String intermediateDir, List
1 wcfSerializers, 布尔值loadAssembly) SerializationAssemblyGenerator.Program.Main(String [] args)ILT0032: 无法编译序列化代码。请参阅构建日志以获取错误 详细信息。
我发现this link描述了同样的问题。但是提出的删除原始类型的KnownType属性的解决方案不适用于我的问题。
当我取消选中“使用.NET Native工具链编译”时,错误消失了,但是二进制分析器失败并出现以下错误:
dotnet-Microsoft.XmlSerializer.Generator.dll失败了 AppContainerCheck检查。
对于我来说,生成的XmlSerialization程序集不起作用(没有更快的序列化),如果我知道的话,我将关闭这些组件的生成。
有人知道如何使用UWP解决此发行版编译问题吗?