現在、mvcアプリケーション用に独自のValidationAttributeを作成しています。
次のValidationAttributeコードがあります。
[AttributeUsage(AttributeTargets.Property | AttributeTargets.Class | AttributeTargets.Parameter, AllowMultiple = false)]
public class RecordAttribute: ValidationAttribute
{
public UniqueDataRecordAttribute(string primaryKeyProperty)
{
}
}
プライマリプロパティのフィールド名を文字列として属性に渡し、sone検証を行います。例えば:
[RecordAttribute("CustomerID")]
public class CustomerMetaData
{
}
これは私にとってはうまくいきますが、主キーの名前が変わると問題が発生します。
主キー属性を含む列挙型を作成しました。しかし、私がそれを渡そうとすると、コンパイラは私に言っています:
属性引数は、定数式、typeof式、または属性パラメータータイプの配列作成式である必要があります。
私もこのアプローチを試しました:C#で列挙型を文字列に関連付けるが、効果は同じです。
列挙型(または他のコンパイルされた値)を属性に渡す機会はありますか?
ありがとうございました