从自定义配置中访问单个项

本文关键字:访问 单个项 配置 自定义 | 更新日期: 2023-09-27 18:05:26

我们正在查看以下非常有用的示例:-栈溢出应答

然而,有人能帮助如何实际访问基于名称的自定义配置项吗?

我意识到有可能对每一个都做a,然后得到正确的一个,但是,我们真的希望像这样访问它:-

config.Instances["Tata Motors"]

从自定义配置中访问单个项

由于ConfigurationElementCollection的索引器是内部的,您必须在MyConfigInstanceCollection中引入您自己的索引器:

public class MyConfigInstanceCollection : ConfigurationElementCollection
{
    protected override ConfigurationElement CreateNewElement()
    {
        return new MyConfigInstanceElement();
    }
    protected override object GetElementKey(ConfigurationElement element)
    {
        //set to whatever Element Property you want to use for a key
        return ((MyConfigInstanceElement)element).Name;
    }
    public new MyConfigInstanceElement this[string key]
    {
        get { return BaseGet(key) as MyConfigInstanceElement; }
    }
}