最近,我们更新了UWP项目,以将Microsoft.UI.Xaml.Controls替换为NavigationViewItem的Windows.UI.Xaml.Controls,以避免在RS4上崩溃。崩溃是由于RS5或更高版本的计算机需要某些导航视图功能所致。
但是在更新UWP项目之后,我们的单元测试项目(只有UWP,.net仍在正常工作)停止了工作。它总是被跳过。如果将单元测试项目设置为启动项目,我将在InitializeComponent()中设置的UnhandledException回调中命中一个断言:
"Cannot deserialize XBF metadata type list as 'XamlControlsResources' was not found in namespace 'Microsoft.UI.Xaml.Controls'.
我很确定这是由上面的UI库更改引起的(也许是名称空间冲突?),但是我不知道如何解决它。我已经将VS 2017更新到最新版本,也尝试更新单元测试框架和NuGet包,没有任何帮助。
我们使用的软件包是:
<PackageReference Include="Microsoft.UI.Xaml">
<Version>2.1.190405004.2</Version>
</PackageReference>
有什么主意吗?
答案 0 :(得分:0)
我在这里找到了解决方法,真正的修复可能会在Microsoft的下一个发行版中。
https://github.com/microsoft/microsoft-ui-xaml/issues/230
我将Nuget包添加到了单元测试项目中,并且还添加了UnitTestAppMainPage.xaml。这使我的UWP单元测试项目再次起作用。