通过Unity依赖注入的WPF参数

时间:2012-12-05 17:39:33

标签: c# wpf mvvm dependency-injection unity-container

我正在通过View实例化Unity,此ViewViewModel作为参数。但是,此ViewModel还有其他三个参数,其中两个参数已在Unity上配置,而我需要从打开MainView的{​​{1}}获取最后一个参数。 (疯了,嗯?)

单击按钮时,从我的MainView(第一个视图)调用此方法:

SecondView

这是我的AddVersionView(第二个视图),它的ViewModel作为参数。

private void ShowAddVersionViewExecute()
{
    Window view = UnityServiceConfigurator.Instance.GetUnityContainer().Resolve<AddVersionView>() as Window;
    view.ShowDialog();
}

这是AddVersionViewModel的构造函数

public partial class AddVersionView
{
    public AddVersionView(AddVersionViewModel viewModel)
    {
        //InicializeComponents and set the viewModel to DataContext.
    }
}

public AddVersionViewModel(IDialogService dialog, AbstractRepository repository, string versionNumber) { //Some code here. } IDialogServiceAbstractRepository解析。 但是我希望从MainView接收Unity

  1. 我应该怎么做/应该做什么?
  2. 还有其他方法可以执行吗?
  3. 非常感谢。

1 个答案:

答案 0 :(得分:2)

您可以使用参数覆盖在解决时提供参数。 http://msdn.microsoft.com/en-us/library/ff660920(v=pandp.20).aspx有几个例子。

相关问题