我需要创建一个核心项目的多个版本。核心项目及其扩展,一些功能以及最重要的设计(字体,颜色等)之间几乎没有什么可以改变的。为此,我创建了Class Library
。我几天前提出了一个问题,我猜想创建Class Library
是正确的方法。这里有link帖子。
现在我已经拥有了库中的所有项目,我正在创建这些扩展,我想导航到Class Library
的页面,但是从扩展中我得到了这个例外:
抛出异常:' System.AccessViolationException'在MyProject.exe中
附加信息:尝试读取或写入受保护的内存。 这通常表明其他内存已损坏。
类库包含UserControls
和Pages
,但我不确定这是否是最好的解决方法。所以任何建议或教程都将不胜感激。
谢谢!
答案 0 :(得分:2)
幸运的是Daniel Vaughan(http://danielvaughan.org/post/UWP-AccessViolationException-when-Navigating-to-a-Page-in-Another-Assembly.aspx)有一个解决方法:
答案 1 :(得分:0)
halllo的答案仅对Debug版本有效。当我在发布版本中进行构建/部署时,问题仍然存在。相反,我只是删除导航代码并直接分配内容。到目前为止,我的应用程序运行良好(因为我不需要导航,因此它是一个WebView应用程序),但我不知道是否会有任何问题。
// rootFrame.Navigate(typeof(MainPage), e.Arguments);
// Remove the above default line
// MainPage is a C# class that inherits a Page in my library
rootFrame.Content = new MainPage();