類似:リフレクションを使用してデータ注釈の属性とそのパラメーターを見つける方法
ただし、カスタム属性を収集しようとすると、常に同じ結果が返されます。空のScriptIgnore
.
PropertyInfo[] Properties = Entity.GetType().GetProperties();
foreach (PropertyInfo Property in Properties)
デバッグ時に、このコード行
var annotes = Property.GetCustomAttributes(typeof(ScriptIgnoreAttribute), false);
(私も使ってみましたtrue
)
このように見えます
annotes | {System.Web.Script.Serialization.ScriptIgnoreAttribute[0]}
ただし、Property はこのようにクラス プロパティとして定義されます。
public virtual Lot Lot { get; set; }
[ScriptIgnore]
属性は付いていません。また、このように定義されたときに Property でこれを試したとき
[ScriptIgnore]
public virtual ICollection<Lot> Lots { get; set; }
上記と同じ結果が返ってきます
annotes | {System.Web.Script.Serialization.ScriptIgnoreAttribute[0]}
リフレクションを使用して属性が存在するかどうかを判断するにはどうすればよいですか? または可能であれば他の手段、私も試しました
var attri = Property.Attributes;
しかし、属性は含まれていませんでした。