c# - Xamarin Forms UWP - 无法使用 .NET Native 工具链编译 - 错误:ILT0032
问题描述
我一直在开发 Xamarin 表单应用程序,但似乎无法在启用 .Net Native Tool 链的发布模式下构建 UWP 版本。尝试编译时,我在构建日志中收到以下错误消息:
C:\Users\dherring\.nuget\packages\microsoft.net.native.compiler\1.7.1\tools\Microsoft.NetNative.targets(697,5): error : System.NotSupportedException: Cannot deserialize type 'Xamarin.Forms.VisualElement' because it contains property 'Bounds' which has no public setter.
剩余的堆栈跟踪:
C:\Users\dherring\.nuget\packages\microsoft.net.native.compiler\1.7.1\tools\Microsoft.NetNative.targets(697,5): error : at System.Xml.Serialization.TypeDesc.CheckSupported()
C:\Users\dherring\.nuget\packages\microsoft.net.native.compiler\1.7.1\tools\Microsoft.NetNative.targets(697,5): error : at System.Xml.Serialization.TypeScope.GetTypeDesc(Type type, MemberInfo source, Boolean directReference, Boolean throwOnError)
C:\Users\dherring\.nuget\packages\microsoft.net.native.compiler\1.7.1\tools\Microsoft.NetNative.targets(697,5): error : at System.Xml.Serialization.ReflectionAwareCodeGen.WriteReflectionInit(TypeScope scope) C:\Users\dherring\.nuget\packages\microsoft.net.native.compiler\1.7.1\tools\Microsoft.NetNative.targets(697,5): error : at System.Xml.Serialization.XmlSerializationWriterCodeGen.GenerateBegin() C:\Users\dherring\.nuget\packages\microsoft.net.native.compiler\1.7.1\tools\Microsoft.NetNative.targets(697,5): error : at System.Xml.Serialization.TempAssembly.GenerateAssembly(XmlMapping[] xmlMappings, Type[] types, String defaultNamespace, Evidence evidence, XmlSerializerCompilerParameters parameters, Hashtable assemblies, String outputDir, IEnumerable'1 referenceDirectories, String intermediateDir, Boolean loadAssembly) C:\Users\dherring\.nuget\packages\microsoft.net.native.compiler\1.7.1\tools\Microsoft.NetNative.targets(697,5): error : at System.Xml.Serialization.XmlSerializer.GenerateSerializer(Type[] types, XmlMapping[] mappings, CompilerParameters parameters, String outputDir, IEnumerable'1 referenceDirectories, String intermediateDir, Boolean loadAssembly) C:\Users\dherring\.nuget\packages\microsoft.net.native.compiler\1.7.1\tools\Microsoft.NetNative.targets(697,5): error : at System.Xml.Serialization.XmlSerializer.GenerateSerializer(Type[] types, String outputDir, IEnumerable'1 referenceDirectories, String intermediateDir, List'1 wcfSerializers, Boolean loadAssembly) C:\Users\dherring\.nuget\packages\microsoft.net.native.compiler\1.7.1\tools\Microsoft.NetNative.targets(697,5): error : at SerializationAssemblyGenerator.Program.Main(String[] args) Generating System.Reflection.DispatchProxy proxy code. C:\Users\dherring\.nuget\packages\microsoft.net.native.compiler\1.7.1\tools\Microsoft.NetNative.targets(697,5): error : ILT0032: Failed to compile serialization code. See the build log for error details.
由于其他限制,我在我的类库中使用 Visual Studio 2017 (15.7.6)、.NetStandard 1.4,因此,我只能达到引用的 Xamarin.Forms 版本 2.5.1.527436。
我查看了 UWP Default.rd.xml 文件,但它似乎没有听它?
<Namespace Name="Xamarin.Forms.VisualElement" Serialize="Excluded" Browse="Excluded" Activate="Excluded" Dynamic="Excluded" XmlSerializer="Excluded" />
和
<Type Name="Xamarin.Forms.VisualElement" Serialize="Auto">
<Property Name="Bounds" Serialize="Excluded" Browse="Excluded" Dynamic="Excluded" />
</Type>
任何帮助将不胜感激。
解决方案
推荐阅读
- typescript - 使用 TypeScript 选择 SVG 圆
- python - 如何计算 Pandas 数据框中的汇总汇总统计信息
- angular - 在集合“@schemics/angular”中找不到“ng-new”
- javascript - 在工具提示 reactjs 中添加断线
- javascript - 解析嵌套的javascript数组
- vba - Options.DefaultHighlightColorIndex 更改后刷新内置功能区按钮并避免退出“文本突出显示颜色”
- html - 绝对 div 被翻译的元素覆盖
- c# - 一张表中有 2 个相同的外键。Fluent Api 生成 3 个外键而不是 2 个
- spring-data-elasticsearch - 无法使用带有 spring-data-elasticsearch 的 startScroll 方法进行排序
- webpack - `dotenv-webpack` 环境变量未定义