c# - UWP Release build error - Missing assembly and XmlSerializer implicit conversion errors -


i have app uses xmlserializer serialize list of uwp's basicgeoposition file. when building debug on x86/64 , arm works fine, when switching release build scheme build .net native, compiler throws following errors:

system.invalidoperationexception: unable generate temporary class (result=1). error cs0012: type 'windows.devices.geolocation.basicgeoposition' defined in assembly not referenced. must add reference assembly 'windows.foundation.universalapicontract, version=4.0.0.0, culture=neutral, publickeytoken=null, contenttype=windowsruntime'. error cs0030: cannot convert type 'system.collections.generic.list<windows.devices.geolocation.basicgeoposition> [{...}\obj\x86\release\ilc\in\system.collections.dll]' 'system.collections.generic.list<windows.devices.geolocation.basicgeoposition> [{...}\oobj\x86\release\ilc\in\system.collections.dll]' error cs0029: cannot implicitly convert type 'system.collections.generic.list<windows.devices.geolocation.basicgeoposition> [{...}\oobj\x86\release\ilc\in\system.collections.dll]' 'system.collections.generic.list<windows.devices.geolocation.basicgeoposition> [{...}\oobj\x86\release\ilc\in\system.collections.dll]' 

the stack trace:

at system.xml.serialization.compiler.compile(string ns, xmlserializercompilerparameters xmlparameters, evidence evidence, string outputdir, ienumerable`1 referencedirectories, string intermediatedir, boolean loadassembly) @ 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) @ system.xml.serialization.xmlserializer.generateserializer(type[] types, xmlmapping[] mappings, compilerparameters parameters, string outputdir, ienumerable`1 referencedirectories, string intermediatedir, boolean loadassembly) @ system.xml.serialization.xmlserializer.generateserializer(type[] types, string outputdir, ienumerable`1 referencedirectories, string intermediatedir, list`1 wcfserializers, boolean loadassembly) @ serializationassemblygenerator.program.main(string[] args) 

why happen? how resolve this?

i'm using visual studio 2017 ce.

edit: i've narrowed down xmlserializer. when comment out xmlserializer stuff in code builds fine release configuration.

full compiler output:

restoring nuget packages... prevent nuget restoring packages during build, open visual studio options dialog, click on package manager node , uncheck 'allow nuget download missing packages during build.' 1>------ build started: project: racepad2, configuration: release x86 ------ 1>c:\users\gala\documents\visual studio 2017\projects\racepad2\racepad2\src\racepad2\core\navigation\parsers.cs(111,46,111,47): warning cs0168: variable 'e' declared never used 1>  racepad2 -> c:\users\gala\documents\visual studio 2017\projects\racepad2\racepad2\bin\x86\release\racepad2.exe 1>  starting .net native compilation 1>  processing application code 1>  computing application closure , generating interop code 1>  generating serialization code 1>  compiling interop code 1>c:\program files (x86)\msbuild\15.0\.net\.netnative\15.0.24211\x86\ilc\ilcinternals.targets(936,5): error : system.invalidoperationexception: unable generate temporary class (result=1). 1>c:\program files (x86)\msbuild\15.0\.net\.netnative\15.0.24211\x86\ilc\ilcinternals.targets(936,5): error : error cs0012: type 'windows.devices.geolocation.basicgeoposition' defined in assembly not referenced. must add reference assembly 'windows.foundation.universalapicontract, version=4.0.0.0, culture=neutral, publickeytoken=null, contenttype=windowsruntime'. 1>c:\program files (x86)\msbuild\15.0\.net\.netnative\15.0.24211\x86\ilc\ilcinternals.targets(936,5): error : error cs0030: cannot convert type 'system.collections.generic.list<windows.devices.geolocation.basicgeoposition> [c:\users\gala\documents\visual studio 2017\projects\racepad2\racepad2\obj\x86\release\ilc\in\system.collections.dll]' 'system.collections.generic.list<windows.devices.geolocation.basicgeoposition> [c:\users\gala\documents\visual studio 2017\projects\racepad2\racepad2\obj\x86\release\ilc\in\system.collections.dll]' 1>c:\program files (x86)\msbuild\15.0\.net\.netnative\15.0.24211\x86\ilc\ilcinternals.targets(936,5): error : error cs0030: cannot convert type 'windows.devices.geolocation.basicgeoposition' 'windows.devices.geolocation.basicgeoposition [c:\users\gala\documents\visual studio 2017\projects\racepad2\racepad2\obj\x86\release\ilc\in\winmetadata\windows.winmd]' 1>c:\program files (x86)\msbuild\15.0\.net\.netnative\15.0.24211\x86\ilc\ilcinternals.targets(936,5): error : error cs0030: cannot convert type 'windows.devices.geolocation.basicgeoposition' 'windows.devices.geolocation.basicgeoposition [c:\users\gala\documents\visual studio 2017\projects\racepad2\racepad2\obj\x86\release\ilc\in\winmetadata\windows.winmd]' 1>c:\program files (x86)\msbuild\15.0\.net\.netnative\15.0.24211\x86\ilc\ilcinternals.targets(936,5): error : error cs0029: cannot implicitly convert type 'system.collections.generic.list<windows.devices.geolocation.basicgeoposition> [c:\users\gala\documents\visual studio 2017\projects\racepad2\racepad2\obj\x86\release\ilc\in\system.collections.dll]' 'system.collections.generic.list<windows.devices.geolocation.basicgeoposition> [c:\users\gala\documents\visual studio 2017\projects\racepad2\racepad2\obj\x86\release\ilc\in\system.collections.dll]' 1>c:\program files (x86)\msbuild\15.0\.net\.netnative\15.0.24211\x86\ilc\ilcinternals.targets(936,5): error : error cs0030: cannot convert type 'system.collections.generic.list<windows.devices.geolocation.basicgeoposition> [c:\users\gala\documents\visual studio 2017\projects\racepad2\racepad2\obj\x86\release\ilc\in\system.collections.dll]' 'system.collections.generic.list<windows.devices.geolocation.basicgeoposition> [c:\users\gala\documents\visual studio 2017\projects\racepad2\racepad2\obj\x86\release\ilc\in\system.collections.dll]' 1>c:\program files (x86)\msbuild\15.0\.net\.netnative\15.0.24211\x86\ilc\ilcinternals.targets(936,5): error : error cs0029: cannot implicitly convert type 'system.collections.generic.list<windows.devices.geolocation.basicgeoposition> [c:\users\gala\documents\visual studio 2017\projects\racepad2\racepad2\obj\x86\release\ilc\in\system.collections.dll]' 'system.collections.generic.list<windows.devices.geolocation.basicgeoposition> [c:\users\gala\documents\visual studio 2017\projects\racepad2\racepad2\obj\x86\release\ilc\in\system.collections.dll]' 1>c:\program files (x86)\msbuild\15.0\.net\.netnative\15.0.24211\x86\ilc\ilcinternals.targets(936,5): error : error cs0030: cannot convert type 'system.collections.generic.list<windows.devices.geolocation.basicgeoposition> [c:\users\gala\documents\visual studio 2017\projects\racepad2\racepad2\obj\x86\release\ilc\in\system.collections.dll]' 'system.collections.generic.list<windows.devices.geolocation.basicgeoposition> [c:\users\gala\documents\visual studio 2017\projects\racepad2\racepad2\obj\x86\release\ilc\in\system.collections.dll]' 1>c:\program files (x86)\msbuild\15.0\.net\.netnative\15.0.24211\x86\ilc\ilcinternals.targets(936,5): error : error cs0029: cannot implicitly convert type 'windows.devices.geolocation.basicgeoposition [c:\users\gala\documents\visual studio 2017\projects\racepad2\racepad2\obj\x86\release\ilc\in\winmetadata\windows.winmd]' 'windows.devices.geolocation.basicgeoposition' 1>c:\program files (x86)\msbuild\15.0\.net\.netnative\15.0.24211\x86\ilc\ilcinternals.targets(936,5): error : error cs0029: cannot implicitly convert type 'windows.devices.geolocation.basicgeoposition [c:\users\gala\documents\visual studio 2017\projects\racepad2\racepad2\obj\x86\release\ilc\in\winmetadata\windows.winmd]' 'windows.devices.geolocation.basicgeoposition' 1>c:\program files (x86)\msbuild\15.0\.net\.netnative\15.0.24211\x86\ilc\ilcinternals.targets(936,5): error :  1>c:\program files (x86)\msbuild\15.0\.net\.netnative\15.0.24211\x86\ilc\ilcinternals.targets(936,5): error :    @ system.xml.serialization.compiler.compile(string ns, xmlserializercompilerparameters xmlparameters, evidence evidence, string outputdir, ienumerable`1 referencedirectories, string intermediatedir, boolean loadassembly) 1>c:\program files (x86)\msbuild\15.0\.net\.netnative\15.0.24211\x86\ilc\ilcinternals.targets(936,5): error :    @ 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) 1>c:\program files (x86)\msbuild\15.0\.net\.netnative\15.0.24211\x86\ilc\ilcinternals.targets(936,5): error :    @ system.xml.serialization.xmlserializer.generateserializer(type[] types, xmlmapping[] mappings, compilerparameters parameters, string outputdir, ienumerable`1 referencedirectories, string intermediatedir, boolean loadassembly) 1>c:\program files (x86)\msbuild\15.0\.net\.netnative\15.0.24211\x86\ilc\ilcinternals.targets(936,5): error :    @ system.xml.serialization.xmlserializer.generateserializer(type[] types, string outputdir, ienumerable`1 referencedirectories, string intermediatedir, list`1 wcfserializers, boolean loadassembly) 1>c:\program files (x86)\msbuild\15.0\.net\.netnative\15.0.24211\x86\ilc\ilcinternals.targets(936,5): error :    @ serializationassemblygenerator.program.main(string[] args) 1>c:\program files (x86)\msbuild\15.0\.net\.netnative\15.0.24211\x86\ilc\ilcinternals.targets(936,5): error : internal compiler error: 1 or more errors occurred. ========== build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ========== 

whilst looking how use nuget replace xmlserializer json solution, stumbled upon updates section. turns out netcore .net native runtime outdated, version 5.2.4. updating version 5.4.0 solved issue.


Comments

Popular posts from this blog

PHP and MySQL WP -

android - InAppBilling registering BroadcastReceiver in AndroidManifest -

go - golang pprof for c library code -