現在関与しているasp.netプロジェクトのカスタム構成ソリューションを実装しようとしています。
これが構成宣言です
<sectionGroup name="WebsiteConfig" type="{namespace}.{class}, {assembly}">
<section name="Languages" type="{namespace}.{class}, {assembly}"/>
<section name="LinkFormats" type="{namespace}.{class}, {assembly}"/>
<section name="Countries" type="{namespace}.{class}, {assembly}"/>
</sectionGroup>
これが私が使おうとしている実際の構成です
<WebsiteConfig>
<Languages>
<Language code="en" domain="...">
<Theme .../>
<SiteMap ..."/>
</Language>
<Language code="de" domain="...">
<Theme .../>
<SiteMap .../>
</Language>
</Languages>
<Countries>
<Country Code="UK">
<Files>
<File name="..." fileUrl="..." enabled="true" />
<File ... />
</Files>
<Messages>
<Message Enabled="true" Message="..." />
<Message ... />
</Messages>
</Country>
<Country Code="...">....</Country>
</Countries>
<LinkFormats UseRewrites="false">
<Link name="..." format="..." formatRewrite=".../"/>
<link .... />
</LinkFormats>
</WebsiteConfig>
私が抱えている問題は、Country要素(ConfigurationElement)内のFilesandMessagesコレクションが認識されない要素「File」などをスローすることです。
私の国の要素には、ファイルとメッセージに対して次のプロパティがあります
[ConfigurationProperty("Files")]
public FilesSection Files
{
get
{
return (FilesSection)this["Files"];
}
set
{
this["Files"] = (object)value;
}
}
[ConfigurationProperty("Messages")]
public MessagesSection Messages
{
get
{
return (MessagesSection)this["Messages"];
}
set
{
this["Messages"] = (object)value;
}
}
FilesSectionとMessagesSectionはどちらも、ConfigurationElementから派生したアイテムのコレクションであるタイプxのデフォルトのコレクションを持つConfigurationElementから派生しています。
誰かが私がどこで間違っているのかについての洞察を持っていますか?
国と国をSectionGroupに変換してから、ファイルとメッセージをSectionに変換する必要がありますか?