Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 旧版dotnet framework 4.7.1应用程序中核心Api的ConfigurationBuilder_C#_Wpf_.net Core_.net Core Configuration - Fatal编程技术网

C# 旧版dotnet framework 4.7.1应用程序中核心Api的ConfigurationBuilder

C# 旧版dotnet framework 4.7.1应用程序中核心Api的ConfigurationBuilder,c#,wpf,.net-core,.net-core-configuration,C#,Wpf,.net Core,.net Core Configuration,正在尝试创建IConfigurationRoottype对象以使用旧版dotnet framework 4.7.1 WPF应用程序配置文件中的Core 2.2 Api myCoreApiController.CoreApiMethod( confirutation); // (IConfigurationRoot configuration) 首先定义一个字典,并使用标识配置设置和值(实际设置)的键加载它。该代码如下所示: var settings = new Dictionary<st

正在尝试创建
IConfigurationRoot
type对象以使用旧版dotnet framework 4.7.1 WPF应用程序配置文件中的Core 2.2 Api

myCoreApiController.CoreApiMethod( confirutation); // (IConfigurationRoot configuration)
首先定义一个字典,并使用标识配置设置和值(实际设置)的键加载它。该代码如下所示:

var settings = new Dictionary<string, string> 
{  
    {"toDoService:url", "http://..."},  
    {"toDoService:contractid", "???"}   
}; 
但是,
ConfigurationBuilder
也是一个界面。所以我不能创建这样的实例。 然后我尝试实现它并创建自己的方法,但无法覆盖
AddInMemoryCollection
静态方法。 因此,上面的解决方案不起作用

请注意,该项目已安装NuGet Microsoft.Extensions.Configuration、Microsoft.Extensions.Configuration.Abstracts

希望有人能分享他们实现这一点的方法。

方法返回,它来自

但在代码中,您将内置配置分配给
IConfiguration

IConfiguration cfg = cfgBuilder.Build();
据指出,目标方法定义为

CoreApiMethod(IConfigurationRoot configuration);
问题是试图将分配的
IConfiguration
变量作为
IConfigurationRoot
传递给目标函数

在分配变量时使用适当的类型

var settings = new Dictionary<string, string> { 
    {"toDoService:url", "http://..."},  
    {"toDoService:contractid", "???"}   
}; 

IConfigurationRoot configuration = new ConfigurationBuilder()
    .AddInMemoryCollection(settings)
    .Build();

myCoreApiController.CoreApiMethod(confirutation); 
var设置=新字典{
{“toDoService:url”http://..."},  
{“toDoService:CONSTRACTID”,“??”}
}; 
IConfigurationRoot配置=新配置生成器()
.AddInMemoryCollection(设置)
.Build();
myCoreApiController.CoreApiMethod(确认法);

我刚刚遇到了这个“问题”。我的问题是我有:

using System.Configuration;
但我需要的是:

using Microsoft.Extensions.Configuration;

正如我提到的,我们不能创建ConfigurationBuilder的实例。出于这个原因,我想要自定义实现。错误为“无法创建抽象类或接口ConfigurationBuilder的实例”@MetallicSkeleton不是抽象的。您需要编辑帖子并澄清实际问题。
Microsoft.Extensions.Configuration.ConfigurationBuilder
不是一个界面。它是一个带有公共构造函数的类。你有什么问题?
using Microsoft.Extensions.Configuration;