当我使用.NET Native编译器编译UWP应用程序并启用代码优化(实质上是发布模式)时,NullReferenceException当我尝试访问catch块中的实际异常时,我得到了一个.
代码示例:
try
{
throw new ArgumentNullException("Param");
}
catch (ArgumentNullException ex) when (ex.ParamName == "Param")
{
ErrorBlock.Text = ex.ParamName; // ErrorBlock is a TextBlock in the xaml
}
catch (Exception)
{
}
Run Code Online (Sandbox Code Playgroud)
它进入正确的catch块,并NullReferenceException在我访问时抛出ex.只有在.Net Native和代码优化都启用时,这才会失败.
是什么导致这个问题?