Xaml 如何将DI与WinRT结合使用

Xaml 如何将DI与WinRT结合使用,xaml,mvvm,dependency-injection,windows-runtime,winrt-xaml,Xaml,Mvvm,Dependency Injection,Windows Runtime,Winrt Xaml,在WinRT页面中,如何注入依赖项 我正在考虑这样做: /// <summary> /// A page that displays an overview of a single group, including a preview of the items /// within the group. /// </summary> public sealed partial class MyPage : NSyncApplication.WinRT.Common.Lay

在WinRT页面中,如何注入依赖项

我正在考虑这样做:

/// <summary>
/// A page that displays an overview of a single group, including a preview of the items
/// within the group.
/// </summary>
public sealed partial class MyPage : NSyncApplication.WinRT.Common.LayoutAwarePage
{
    IMyDependency _myDependency;

    public MyPage(IMyDependency myDependency)
    {
        _myDependency = myDependency;
        this.InitializeComponent();
    }
    .
    .
    .
 }
//
///显示单个组概览的页面,包括项目预览
///在小组内。
/// 
公共密封部分类MyPage:nsyncapapplication.WinRT.Common.LayoutAwarePage
{
不依赖性_myDependency;
公共MyPage(IMyDependency myDependency)
{
_myDependency=myDependency;
this.InitializeComponent();
}
.
.
.
}
如果这不是一个好的做法,请解释并推荐替代解决方案

注:

我不需要可以与WinRT一起使用的特定DI容器,这已经得到了回答,任何白痴都可以查看nuget gallery并选择它们

这个问题是关于如何插入页面工厂并注入自己的依赖项。我还研究了WinRT的Prism,它比我记忆中的WPF版本更加复杂

重复:

  • 如何直接注入到页面中。有网页工厂吗 或者我可以利用它来添加自定义实例化代码

  • 我是否应该将代码注入后台并使其成为viewmodel?Prism MVVM示例具有 ViewModel的另一个抽象层与 代码隐藏(被认为是视图的一部分)。这很好很酷,但需要更多的布线和安装 自定义标记比我喜欢做我的相对简单的项目。我希望推出更“轻”的产品。但可能有反对的理由,请解释


  • 请检查MVVM灯。他们使用VMLocator,它公开XAML可以绑定的视图模型。在MSDN杂志上,您可以找到如何使用它的详细说明。

    dup of&这个问题专门询问如何设置DI,如“如何插入页面工厂并注入我自己的依赖项”所述。我们现在知道NInject可以在WinRT中执行必要的操作,但这(尽管是有用的信息)并不是这个问题的答案。