代码之家  ›  专栏  ›  技术社区  ›  Roman Pokrovskij Archil Labadze

Microsoft.Configuration.Extensions:如何将节/复杂值作为json字符串获取?

  •  -1
  • Roman Pokrovskij Archil Labadze  · 技术社区  · 8 年前

    // appsettings.json
    {
        "SomeServiceConfiguration": {
           "Server": "127.0.0.1",
           "Port": "25"
        }
    }
    

    可以使用绑定来访问数据:

    IConfiguration configuration =  ...;
    var section = configuration.GetSection("SomeServiceConfiguration");
    var val = section.Value; // this is null
    var t = new SomeServiceConfiguration();
    section.Bind(t);
    

    但是否有可能获得价值(节内容) “就像字符串” (事实上是json) {"Server": "127.0.0.1", "Port": "25"} ?

    1 回复  |  直到 8 年前
        1
  •  1
  •   janniks    8 年前

    根据 ConfigurationSection Class 这是不可能的。

    但是,可以使用 ConfigurationElement.SerializeElement(XmlWriter, Boolean) Method ,这在默认情况下是可能的。您必须在之后转换为JSON,所以这似乎有些过分了。

    JSON Object