web.configで
<section name="FlowWebDataProviders" type="FlowWebProvidersSection" requirePermission="false"/>
<FlowWebDataProviders peopleProviderName="sqlProvider" IzmListProviderName="sqlProvider">
<PeopleProviders>
<add name="sqlProvider" type="SqlPeopleProvider" connectionStringName="FlowServerConnectionString"/>
<add name="xmlProvider" type="XmlPeopleProvider" schemaFile="People.xsd" dataFile="People.xml"/>
</PeopleProviders>
<IzmListProviders>
<add name="sqlProvider" type="SqlIzmListProvider" connectionStringName="FlowServerConnectionString"/>
</IzmListProviders>
</FlowWebDataProviders>
と
public class FlowWebProvidersSection : ConfigurationSection
{
[ConfigurationProperty("peopleProviderName", IsRequired = true)]
public PeopleProviderName : string
{
get { this["peopleProviderName"] :> string }
set { this["peopleProviderName"] = value; }
}
[ConfigurationProperty("IzmListProviderName", IsRequired = true)]
public IzmListProviderName : string
{
get { (this["IzmListProviderName"] :> string) }
set { this["IzmListProviderName"] = value; }
}
[ConfigurationProperty("PeopleProviders")]
[ConfigurationValidatorAttribute(typeof(ProviderSettingsValidation))]
public PeopleProviders : ProviderSettingsCollection
{
get { this["PeopleProviders"] :> ProviderSettingsCollection }
}
[ConfigurationProperty("IzmListProviders")]
[ConfigurationValidatorAttribute(typeof(ProviderSettingsValidation))]
public IzmListProviders : ProviderSettingsCollection
{
get { this["IzmListProviders"] :> ProviderSettingsCollection }
}
}
と
public class ProviderSettingsValidation : ConfigurationValidatorBase
{
public override CanValidate(typex : Type) : bool
{
if(typex : object == typeof(ProviderSettingsCollection)) true else false
}
/// <summary>
// validate the provider section
/// </summary>
public override Validate(value : object) : void
{
mutable providerCollection : ProviderSettingsCollection = match(value)
{
| x is ProviderSettingsCollection => x
| _ => null
}
unless (providerCollection == null)
{
foreach (_provider is ProviderSettings in providerCollection)
{
when (String.IsNullOrEmpty(_provider.Type))
{
throw ConfigurationErrorsException("Type was not defined in the provider");
}
mutable dataAccessType : Type = Type.GetType(_provider.Type);
when (dataAccessType == null)
{
throw (InvalidOperationException("Provider's Type could not be found"));
}
}
}
}
}
プロジェクト:Webアプリケーション..。
最初にエラーを見つける必要があります。。。
どうして :
エラーメッセージパーサー:FlowWebDataProvidersの構成セクションハンドラーの作成中にエラーが発生しました:タイプ'FlowWebProvidersSection'を読み込めませんでした。
?
ちなみに:nemerle(現在の言語)の構文はC#と非常に似ています、コードを読むことを恐れないでください...ありがとう
追加:これは私がセクションを取得したい方法です
ConfigurationManager.GetSection("FlowWebDataProviders")