相关疑难解决方法(0)

如何使用ConfigurationElementCollection实现ConfigurationSection

我正在尝试在项目中实现自定义配置部分,并且我一直在遇到我不理解的异常.我希望有人能填补这里的空白.

App.config看起来像这样:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <configSections>
        <section name="ServicesSection" type="RT.Core.Config.ServicesConfigurationSectionHandler, RT.Core"/>
    </configSections>
    <ServicesSection type="RT.Core.Config.ServicesSection, RT.Core">
            <Services>
                <AddService Port="6996" ReportType="File" />
                <AddService Port="7001" ReportType="Other" />
            </Services>
        </ServicesSection>
</configuration>
Run Code Online (Sandbox Code Playgroud)

我有一个ServiceConfig像这样定义的元素:

public class ServiceConfig : ConfigurationElement
  {
    public ServiceConfig() {}

    public ServiceConfig(int port, string reportType)
    {
      Port = port;
      ReportType = reportType;
    }

    [ConfigurationProperty("Port", DefaultValue = 0, IsRequired = true, IsKey = true)]
    public int Port 
    {
      get { return (int) this["Port"]; }
      set { this["Port"] = value; …
Run Code Online (Sandbox Code Playgroud)

c# configuration app-config configuration-files

157
推荐指数
5
解决办法
14万
查看次数

自定义app.config部分,带有一个简单的"添加"元素列表

如何创建自定义app.config部分,它只是一个简单的add元素列表?

我找到了一些示例(例如,如何在app.config中创建自定义配置部分?),以查看如下所示的自定义部分:

<RegisterCompanies>
  <Companies>
    <Company name="Tata Motors" code="Tata"/>
    <Company name="Honda Motors" code="Honda"/>
  </Companies>
</RegisterCompanies>
Run Code Online (Sandbox Code Playgroud)

但是,我如何避免额外的集合元素("公司"),使其看起来与appSettingsconnectionStrings部分相同?换句话说,我想:

<registerCompanies>
  <add name="Tata Motors" code="Tata"/>
  <add name="Honda Motors" code="Honda"/>
</registerCompanies>
Run Code Online (Sandbox Code Playgroud)

c# app-config

84
推荐指数
4
解决办法
8万
查看次数

如何从.net核心中的appsettings.json中提取列表

我有一个appsettings.json文件,如下所示:

{
    "someSetting": {
        "subSettings": [
            "one",
            "two",
            "three"
         ]
    }
}
Run Code Online (Sandbox Code Playgroud)

当我构建我的配置根,并做类似的config["someSetting:subSettings"]事情返回null并且可用的实际设置是这样的:

config["someSettings:subSettings:0"]

有没有更好的方法来检索someSettings:subSettings列表的内容?

c# .net-core asp.net-core

47
推荐指数
5
解决办法
3万
查看次数

单个配置密钥的多个值

我试图用来ConfigurationManager.AppSettings.GetValues()检索单个键的多个配置值,但我总是收到一个只有最后一个值的数组.我的appsettings.config样子

<add key="mykey" value="A"/>
<add key="mykey" value="B"/>
<add key="mykey" value="C"/>
Run Code Online (Sandbox Code Playgroud)

而我正试图访问

ConfigurationManager.AppSettings.GetValues("mykey");
Run Code Online (Sandbox Code Playgroud)

但我只是得到了{ "C" }.

关于如何解决这个问题的任何想法?

.net asp.net configuration

41
推荐指数
5
解决办法
5万
查看次数

自定义app.config配置节处理程序

如果我使用像这样的app.config,通过继承自System.Configuration.Section的类来获取"页面"列表的正确方法是什么?

<?xml version="1.0" encoding="utf-8" ?>
<configuration>

  <configSections>
    <section name="XrbSettings" type="Xrb.UI.XrbSettings,Xrb.UI" />
  </configSections>

  <XrbSettings>
    <pages>
      <add title="Google" url="http://www.google.com" />
      <add title="Yahoo" url="http://www.yahoo.com" />
    </pages>
  </XrbSettings>

</configuration>
Run Code Online (Sandbox Code Playgroud)

.net configuration app-config configsection

31
推荐指数
2
解决办法
3万
查看次数

在appSettings中存储字符串数组?

我想将一维字符串数组存储为我的条目appSettings.我不能简单地用元素分隔元素,,或者|因为元素本身可以包含那些字符.

我正在考虑存储数组,JSON然后使用它反序列化它JavaScriptSerializer.

有没有"正确"/更好的方法来做到这一点?

(我的JSON想法有点像hacky)

.net asp.net app-config web-config asp.net-4.0

26
推荐指数
6
解决办法
3万
查看次数

C#App.Config包含数组或列表之类的数据

如何在app.config中获取数组或列表信息?我希望用户能够尽可能多地放置IP(或根据需要).我的程序只需要在app.config中指定的任何内容.这该怎么做?

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <appSettings>
    <add key="ip" value="x" />
    <add key="ip" value="y" />
    <add key="ip" value="z" />
    </appSettings>
</configuration>



public string ip = ConfigurationManager.AppSettings["ip"];
Run Code Online (Sandbox Code Playgroud)

c# config

18
推荐指数
3
解决办法
4万
查看次数