Kon*_*ten 1 c# console-application .net-core .net-5
根据 .NET Core 5 的文档,有一个SetBasePath方法,它被广泛用于大量博客(示例 1、示例 2、示例 3等)。没有任何关于它是一个奇怪的陷阱之类的概念。但是,当我尝试下面的语法时,它被标记为红色并声称不存在。
using System;
using Microsoft.Extensions.Configuration;
static void Main(string[] args)
{
string path = AppDomain.CurrentDomain.BaseDirectory;
IConfigurationBuilder builder = new ConfigurationBuilder();
builder.SetBasePath(path);
}
Run Code Online (Sandbox Code Playgroud)
我不确定为什么会发生这种情况,而不是该怎么办。
重现步骤:
收到的错误是这样的。
错误 CS1061
“ConfigurationBuilder”不包含“SetBasePath”的定义,并且找不到接受“ConfigurationBuilder”类型的第一个参数的可访问扩展方法“SetBasePath”(您是否缺少 using 指令或程序集引用?)
据我所知,我已具备所有先决条件。
请记住,多种类型可以通过Extension Methods 将方法贡献给单个类型。所以SetBasePath从来都不是IConfigurationBuilder接口上的方法。
并且多个程序集可以为同一个命名空间贡献类型,文档说定义SetBasePath扩展方法的类型在:
FileConfigurationExtensions 类定义命名空间:Microsoft.Extensions.Configuration 程序集: Microsoft.Extensions.Configuration.FileExtensions.dll
您可以轻松验证在您的依赖项中不存在。所以你缺少一个 NuGet 包。原来这个很容易找到:Microsoft.Extensions.Configuration.FileExtensions
| 归档时间: |
|
| 查看次数: |
780 次 |
| 最近记录: |