繁体   English   中英

ASP.NET:从 web.config 读取值列表

[英]ASP.NET: Reading list of values from web.config

在一个cs文件中我有一个像这样的IF function>

If (myValue == 'AA' || myValue == 'BB' || myValue == 'CC')
{
DoThis()
}

但有时我必须添加更多条件:myValue == 'DD' 等等。

是否不可能在 web.config 中插入新值(和所有值)并从那里读取而不是修改代码?

例如,在我的 web.config 文件中,我可以有这样的内容:

<appSettings>
     <add key="AA" value="AA"/>
     <add key="BB" value="BB"/>
     <add key="CC" value="CC"/>
     <add key="DD" value="DD"/>
</appSettings> 

在代码中我应该有类似的东西:

如果 mySearchString 存在于 web.config 的列表中,则调用 DoThis() 方法

先感谢您。

路易斯

首先在 web.config 中使用逗号分隔值创建一个键,如下所示。

<appSettings>
     <add key="Categories" value="AA,BB,CC,DD"/>
</appSettings>

然后访问变量并拆分它。

var categories = System.Configuration.ConfigurationManager.AppSettings["Categories"].Split(',');
        
if(categories.Contains(myValue)){
    DoThis()
}

尝试这个

var appSets = 
ConfigurationManager.GetSection("appSettings") as NameValueCollection;
   
  if (appSets["AA"]=="AA" || appSets["BB"]=="BB") do something
    

或者你可以迭代

    foreach (var item in applicationSettings.Keys)
    {
      var key = item.ToString();
      var value = applicationSettings[key];
    }

暂无
暂无

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

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