[英]How to get values from web.config app key to a list
我的web.config中包含以下内容:
<add key="someValuestoReturn" value="60,59,58,57,56"/>
我想将这个整数值的列表返回到我的方法中,但是我很难从web.config调用值列表:
Private int GetValues(){
var _list = System.Configuration.ConfigurationManager.AppSettings["someValuestoReturn"].ToList(); //<< doesn't work
return _list
}
实现这一目标的最佳方法是什么?
谢谢
我可能建议您以其他方式解决此问题。
首先创建一个空字符串列表,然后将其放入数组中:
之后,我们需要找到您的密钥,并且需要将密钥中的值获取到新创建的列表中,但是由于您的值是逗号分隔的,因此我们必须注意拆分,因此请查看下面的代码:
List<string> values = new List<string>();
foreach (string key in ConfigurationManager.AppSettings)
{
if (key.StartsWith("someValuestoReturn"))
{
string value = ConfigurationManager.AppSettings[key].Split(',');
values.Add(value);
}
}
string[] myValuesfromWebConfig = values.ToArray();
就是这样,您将所有值存储在名为myValuesfromWebConfig
的数组中
而且,如果您想要的不是字符串,则只需将列表/数组类型从string
更改为int
。
如您所见,我包括了
string value = ConfigurationManager.AppSettings[key].Split(',');
因为您的值是用逗号分隔的,所以我想您想将它们分别添加到数组/列表中。
谢谢
编辑:
由于您在注释中写的错误,我们可以跳过将其添加到数组中的操作,只需删除该行,无论如何您都会将您的值存储在列表values
,因此最后它看起来像这样:
List<string> values = new List<string>();
foreach (string key in ConfigurationManager.AppSettings)
{
if (key.StartsWith("someValuestoReturn"))
{
string value = ConfigurationManager.AppSettings[key].Split(',');
values.Add(value);
}
}
现在,如果您需要读取该值或对它们执行任何操作,则可以遍历它们,就是这样,例如:
foreach(var item in values)
{
//Do whatever you want with your item
}
返回的字符串不是List
。
对于List
使用:
var _list = System.Configuration.ConfigurationManager.AppSettings["someValuestoReturn"].Split(",");
System.Configuration.ConfigurationManager.AppSettings["someValuestoReturn"].Split(',');
它将返回一个字符串数组
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.