最近、Enterprise Validation Library を発見し、それを使用して app.config ファイルを検証しています。私はほとんどの場合、検証を簡単に適用できる文字列を持っています。たとえば、いくつかのブール値もあります。
class Options
{
public bool IsRed { get; set; }
public bool IsBlue { get; set; }
}
そして、私のapp.config内:
<!--Options-->
<add key ="IsRed" value="true"/>
<add key ="IsBlue" value="Maybe"/>
検証ルールを適用して、app.config ファイルの値が実際に bool であることを確認することはできますか?
私が思いついた最高のものはこれです:
class Options
{
[TypeConversionValidator(typeof(bool), MessageTemplate = "IsRed value must be a true/false")]
public string IsRed { get; set; }
[TypeConversionValidator(typeof(bool), MessageTemplate = "IsBlue value must be a true/false")]
public string IsBlue { get; set; }
}
これは機能しますが、ブール値ではなく文字列を扱っています。