在复合应用程序(棱镜)中,当我的模块加载时,我收到此错误:
{“当前构建操作(构建键Build Key[CustomersModul.ViewModels.CustomerAllViewModel, null])失败:尝试调用构造函数CustomersModul.ViewModels.CustomerAllViewModel(CustomersModul.Views.CustomerAllView view)时无法解析参数视图。(策略类型 Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy,索引 2)"}
我正在解决这个类:
CustomerAllViewModel layoutManager = this.container.Resolve<CustomerAllViewModel>();
那个类看起来像这样:
public class CustomerAllViewModel : ViewModelBase
{
public CustomerAllView View { get; set; }
public ICommand TextChangeCommand { get; set; }
private Customer customer;
public CustomerAllViewModel(CustomerAllView view)
{
View = view;
view.DataContext = this;
...
通常我会解析没有构造函数参数的Presenter并在内部实例化他们的视图。这是我第一次使用接受 View 作为参数的ViewModel 。
有趣的是,当我使用Resharper转到视图时,它会询问我是否要转到 XAML 或后面的代码,所以也许 Prism 很困惑要实例化哪个?
如何让 Prism 在参数中自动实例化此视图(带有 XAML 和代码隐藏的用户控件)?