繁体   English   中英

如何在 .net core 3.1 Winforms 中使用 ConfigurationBuilder?

[英]How do I Use ConfigurationBuilder in .net core 3.1 Winforms?

我在 .net core 2.1 aspnet 应用程序中有以下工作

using System;
using System.IO;
using Microsoft.AspNetCore;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Configuration;

public class Program
{
    public static void Main(string[] args)
    {
        var configuration = new ConfigurationBuilder()
            .SetBasePath(Directory.GetCurrentDirectory())
            .AddJsonFile(path: "appsettings.json", optional: false, reloadOnChange: true)
            .Build();

当我尝试使用 .net core 3.1 WInforms 应用程序进行类似操作时,我发现 SetBasePath 和 AddJsonFile 不可用

using Microsoft.Extensions.Configuration;
using System;
using System.Text;
using System.Windows.Forms;
using System.Xml;
namespace myapp {

public partial class Form1 : Form
{
    private SyndicationFeed feed;
    public Form1()
    {
        InitializeComponent();
        var configuration = new ConfigurationBuilder();

        configuration.SetBasePath(System.IO.Directory.GetCurrentDirectory());  // errors here
        configuration.AddJsonFile(path: "appsettings.json", optional: false, reloadOnChange: true); // errors here
        configuration.Build();
    }

我尝试了您发布的相同代码。 添加以下 NuGet 包后,我可以编译和运行该应用程序。

Microsoft.Extensions.Configuration(版本 3.1.0)
Microsoft.Extensions.Configuration.Json(版本 3.1.0)

您很可能在您的环境中缺少这些软件包。

您扩展方法SetBasePath被定义Config.FileExtensions

您能否检查一下是否缺少对以下内容的引用: Microsoft.Extensions.Configuration.FileExtensions包。

解析AddJsonFile,需要添加对Microsoft.Extensions.Configuration.Json包的引用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM