1

このようなカスタム構成セクションを実装しました

 <directorySettings>
   <domainConfigurationList>
     <domainConfiguration id="1" name="name1" url="http://www.google.com"/>
     <domainConfiguration id="2" name="name2" url="http://www.bing.com"/>
   </domainConfigurationList>
 </directorySettings>

キーとして設定できるフィールドは 1 つだけです。

    protected override object GetElementKey(ConfigurationElement element)
    {
        return ((DirectorySettingsConfigurationElement)element).Name;
    }

しかし、キー「名前」だけでなくフィールド「ID」でも検索できるようにする必要があります。これが私の一部ですDirectorySettingsConfigurationElementCollection

    public DirectorySettingsConfigurationElement Get(string name)
    {
        return (DirectorySettingsConfigurationElement)BaseGet(name);
    }

    public DirectorySettingsConfigurationElement GetById(int id)
    {
        // ???
        return null;
    }

DirectorySettingsConfigurationElement(キーではなく)カスタムフィールドで取得する最良の方法は何ですか

4

1 に答える 1

0

もっと直接的な答えがあるかもしれません。しかし、私が一般的に見た方法は、ConfigurationElementCollection( http://msdn.microsoft.com/en-us/library/system.configuration.configurationelementcollection.aspx )を使用することです。

domainConfigurations のコレクションを取得し、それを反復処理するか、LINQ クエリを使用して一致する値を取得できます。

于 2012-12-27T14:17:59.963 に答える