由于缺少配置生成器,没有 DI 无法读取 appsettings.json
Can't read appsettings.json without DI due to missing Configuration Builder
我正在尝试从 appsettings.json 中读取,但我不想使用 DI。我只是想访问该文件。我正在按照 MS 的建议关注 simple configuration。
using System.IO;
using Microsoft.Extensions.Configuration;
class Program
{
public static IConfigurationRoot Configuration { get; set; }
static void Main(string[] args)
{
IConfigurationBuilder builder = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("appsettings.json");
Configuration = builder.Build();
}
}
当我指定对 Microsoft.Extensions.Configuration
的引用时,类 从红色突出显示变为绿色,除了一个 - Configuration Builder
实例创建。它会产生以下错误。
Error CS0246 The type or namespace name 'ConfigurationBuilder' could not be found (are you missing a using directive or an assembly reference?)
我找到的所有示例都是以相同的方式设置的。甚至 docs for Configuration Builder
也说它应该在那里。我不知道如何继续。
如果有任何意义,我正在使用 .NET Core 2.0。
AddJsonFile
方法在 Microsoft.Extensions.Configuration.Json
包和 Microsoft.Extensions.Configuration
命名空间中。
所以 Microsoft.Extensions.Configuration.Json
包需要添加到 project.Once 所有包都已成功恢复,它完美运行。
如果您已经添加了它们,则另一个错误可能会在该点被编译之前阻止构建。
我有类似的东西。
我已经引用了 ConfigurationBuilder 并在同一解决方案的另一个项目中工作。
我copy/pasted将ConfigurationBuilder代码放到一个新项目中,遇到了和你一样的问题。
我查看了解决方案的 NuGet 安装包。
果然,Microsoft.Extensions.Configuration.Json 是为工作项目安装的,而不是新项目。
为新项目安装它,瞧瞧。
我正在尝试从 appsettings.json 中读取,但我不想使用 DI。我只是想访问该文件。我正在按照 MS 的建议关注 simple configuration。
using System.IO;
using Microsoft.Extensions.Configuration;
class Program
{
public static IConfigurationRoot Configuration { get; set; }
static void Main(string[] args)
{
IConfigurationBuilder builder = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("appsettings.json");
Configuration = builder.Build();
}
}
当我指定对 Microsoft.Extensions.Configuration
的引用时,类 从红色突出显示变为绿色,除了一个 - Configuration Builder
实例创建。它会产生以下错误。
Error CS0246 The type or namespace name 'ConfigurationBuilder' could not be found (are you missing a using directive or an assembly reference?)
我找到的所有示例都是以相同的方式设置的。甚至 docs for Configuration Builder
也说它应该在那里。我不知道如何继续。
如果有任何意义,我正在使用 .NET Core 2.0。
AddJsonFile
方法在 Microsoft.Extensions.Configuration.Json
包和 Microsoft.Extensions.Configuration
命名空间中。
所以 Microsoft.Extensions.Configuration.Json
包需要添加到 project.Once 所有包都已成功恢复,它完美运行。
如果您已经添加了它们,则另一个错误可能会在该点被编译之前阻止构建。
我有类似的东西。 我已经引用了 ConfigurationBuilder 并在同一解决方案的另一个项目中工作。
我copy/pasted将ConfigurationBuilder代码放到一个新项目中,遇到了和你一样的问题。
我查看了解决方案的 NuGet 安装包。
果然,Microsoft.Extensions.Configuration.Json 是为工作项目安装的,而不是新项目。
为新项目安装它,瞧瞧。