我有一个非常奇怪的问题。
我们编写了一个Windows Phone 8.1应用程序,并将其升级为UWP。该应用程序的调试版本运行良好,但是,当我在发布时运行它时,我收到此错误:
Internal.Runtime.TypeLoader.TypeBuilder + MissingTemplateException:抛出了类型“{0}”的异常.Internal.Runtime.TypeLoader.TypeBuilder + MissingTemplateException。有关详细信息,请访问http://go.microsoft.com/fwlink/?LinkId=623485
尝试打开特定的ViewModel时(使用MvvmCross)。它只发生在这个ViewModel上,尽管它看起来并不特别。
请注意,我正在使用.NetNative进行编译。如果我禁用它,它工作正常,但我无法在没有它的情况下将应用程序发布到商店。
非常感谢任何帮助。
答案 0 :(得分:1)
这是.NET Native中的运行时异常之一。您最有可能通过向Default.rd.xml文件添加内容来解决此问题。
为了正确诊断这一点,我建议为项目的DEBUG配置启用.NET Native编译(项目属性> BUILD>启用.Net Native复选框)。然后,将调试器设置为在第一次机会异常时停止。 如果您可以转到Update 1,则消息会更好一些。
经过深入挖掘后,我很想知道最终会发生什么。发现这种类型的错误非常罕见,所以知道我们可以做得更好的地方会很棒。欢迎您随时通过dotnetnative@microsoft.com向我们发送具体反馈。
答案 1 :(得分:0)
问题似乎是违规的ViewModel有一个返回任务的Init方法:
public async Task Init(...)
通过将其更改为无效来修复:
public async void Init(...)
不太清楚为什么,但它有效...