プロパティの属性をいくつか作成しました。これらの属性を特定のデータ型のプロパティに限定したいのですか?考え方は、別の型に代入されるとコンパイラエラーがスローされます。これは可能ですか?C#属性の使用法:特定のデータ型を持つプロパティの属性のみを許可する
もしそうでなければ、私はランタイムにそれをチェックしなければならないと思います。
プロパティの属性をいくつか作成しました。これらの属性を特定のデータ型のプロパティに限定したいのですか?考え方は、別の型に代入されるとコンパイラエラーがスローされます。これは可能ですか?C#属性の使用法:特定のデータ型を持つプロパティの属性のみを許可する
もしそうでなければ、私はランタイムにそれをチェックしなければならないと思います。
これを確認するカスタムFxCop/ Code Analysisルールを書くことができます。
FxCopはVS 2010で "Code Analyis"という名前で統合されており、プロジェクトプロパティのルールセットを変更できます。
ありがとう、両方の答えは良い解決策です。私はここで使用しているので、CAに行くかもしれません。 – Mel
@Mel FxCop/Code Analysisも絶対に良い選択です。 –
いいえ、これはできません。
ユニットテストを構築して、すべてのクラスとそのプロパティをトラバースし、この追加の適用基準をチェックすることをお勧めします。コンパイル時のエラーメッセージとしては快適ではありませんが、その目的に役立ちます。何らかの種類のビルド自動化インフラストラクチャがある場合は、品質保証レベルは実際に同じになります。
可能な重複[http://stackoverflow.com/questions/4959863/how-to-make-net-attribute-only-valid-on-certain-types](http://stackoverflow.com/questions/4959863) /どのようにしてメイクネット属性のみ有効な特定のタイプ) – heads5150
私はそれが重複しているとは思わない。それはクラスに属性を適用するためのものです。これは特定のタイプのプロパティ用です。 – Mel
しかし、運命は同じように見えます:( – Mel