gpt4 book ai didi

c# - 运行时服务不再注入(inject) DNX 控制台应用程序 (RC1)

转载 作者:行者123 更新时间:2023-11-30 14:51:50 26 4
gpt4 key购买 nike

我曾经能够将 IApplicationEnvironment 等运行时服务注入(inject)到 DNX 控制台应用程序的 Pogram 类的构造函数中。然而,使用 RC1 的最新 CI 构建,服务不再被注入(inject):

public Program(IApplicationEnvironment env)
{
if (env == null)
{
// env is null.
throw new ArgumentNullException(nameof(env));
}
}

最佳答案

DNX 平台希望与常规 Program.Main 入口点兼容。因此,他们删除了对 Program 类的依赖注入(inject)。

相反,您可以使用新的 PlatformServices 类,它提供对运行时服务的访问:

public Program()
{
var env = PlatformServices.Default.Application;
}

PlatformServices类位于 Microsoft.Extensions.PlatformAbstractions 命名空间中。

ILibraryExporterICompilerOptionsProvider 这样的类型现在通过 CompilationServices 公开。 Microsoft.Extensions.CompilationAbstractions 命名空间中的类。

> Reference

关于c# - 运行时服务不再注入(inject) DNX 控制台应用程序 (RC1),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33363178/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com