小编rab*_*woo的帖子

UWP 模板 10 和服务依赖注入 (MVVM) 不是 WPF

我花了两个多星期的时间搜索 google、bing、stack overflow 和 msdn 文档,试图找出如何为我正在开发的移动应用程序进行适当的依赖注入。需要明确的是,我每天都在 Web 应用程序中进行 DI。我不需要关于什么、谁以及为什么 DI 很重要的速成课程。我知道它是,并且我总是拥抱它。

我需要了解的是这在移动应用程序世界中是如何工作的,尤其是 UWP 模板 10 移动应用程序。

从我过去开始,在 .net/Asp 应用程序中,我可以“RegisterType(new XYZ).Singleton() blah”{请原谅语法;只是 App_Start.ConfigureServices 中的一个示例}。这在 .netcore 中的工作原理几乎相同,但进行了一些语法更改。

我的问题是现在我试图将我的 api 提供给需要消化我的 IXYZ 服务的 UWP 应用程序。我绝不认为他们应该每次都“新建”一个实例。必须有一种方法将其注入 UWP 端的容器中;我觉得我在这个过程中遗漏了一些非常简单的东西。

这是我的代码:

应用程序.xaml.cs

public override async Task OnStartAsync(StartKind startKind, IActivatedEventArgs args)
    {
        // TODO: add your long-running task here

        //if (args.Kind == ActivationKind.LockScreen)
        //{

        //}
        RegisterServices();
        await NavigationService.NavigateAsync(typeof(Views.SearchCompanyPage));

    }

public static IServiceProvider Container { get; private set; }

private static void RegisterServices()
{
    var services …
Run Code Online (Sandbox Code Playgroud)

uac dependency-injection inversion-of-control uwp template10

5
推荐指数
1
解决办法
4095
查看次数