0

ShellModelをコンテナに登録したいので、別のモジュールのViewModelで解決できるので、ViewModelのウィンドウスタイルを変更できます。しかし、ViewModel で ShellModel の同じインスタンスを取得することはできません。常に ShellModel の新しいインスタンスを返します。だから私は以下に簡単なテストを書いていますが、私はそれについて混乱しています。

public Shell()
    {
        InitializeComponent();
        var shellModel = new ShellModel();
        IUnityContainer container = new UnityContainer();
        container.RegisterInstance<ShellModel>(shellModel);
        Console.WriteLine(container.Resolve<ShellModel>().GetHashCode());//41837403
        Console.WriteLine(container.Resolve<ShellModel>().GetHashCode());//41837403
        IUnityContainer newcontainer = new UnityContainer();
        Console.WriteLine(newcontainer.Resolve<ShellModel>().GetHashCode());//3634967
        Console.WriteLine(newcontainer.Resolve<ShellModel>().GetHashCode());//29355815
    }
4

1 に答える 1