以下代码从来没有出现过任何问题:
public partial class SelectionPage : ContentPage
{
private SelectionViewModel vm;
public SelectionPage(SelectionViewModel viewmodel)
{
InitializeComponent();
this.vm = viewmodel;
BindingContext = viewmodel;
viewmodel.PropertyChanged += Viewmodel_PropertyChanged;
}
但是当我将其安装在新设备或新模拟器上时,我收到以下错误: System.Reflection.TargetInitationException:“调用目标已引发异常。”
我发现了一个奇怪的解决方法,它允许我暂时继续开发: 如果我注释掉该行:
// BindingContext = viewmodel;
我可以在我的设备上部署该应用程序。
成功部署后,我可以重新激活 BindingContext = viewmodel;
并且它可以工作。
当然,我必须找到此错误的原因,以便让我的应用程序可供测试人员使用。 我很感激所有的提示。
查看内部异常是一个很好的做法。谢谢@Jason 的提示。 每当存在先前未处理的异常时,在使用依赖项注入进行初始化期间,都可能会弹出 TargetInitationException。就我而言,此未处理的异常仅在首次安装时引发,例如在新设备或新模拟器上。