他のカスタム連絡先モデルクラスが継承するベースコンタクトモデルを使用しています。モデルの検証属性を継承しないようにする
public class BaseContactModel
{
[Required(ErrorMessage = "Firstname is required")]
public virtual string FirstName { get; set; }
}
ベースコンタクトモデルは、フラグにプロパティを検証属性を使用して必要ないくつかのケースでは、私はそれを上書きしたり停止したいです。これは可能でしょうか?
public class ContactModel : BaseContactModel
{
[NotRequired]
public override string FirstName { get; set; }
}
私は
だけでtrueを返すためにをNotRequired新しい検証属性を使用しようとしましたが、属性だけで実行されているので、必要な& NotRequiredを積み上げされて表示され、検証が失敗しています。
(私は見つけることができませんでした)ソリューションを探しに私はいくつかの無関係な属性は「継承」プロパティを持っていることがわかったが、私はSystem.ComponentModel.DataAnnotationsでネイティブの検証属性でこれを表示されません。
これは失われた原因ですか?継承を無効にするのをサポートする独自のバージョンをロールバックする必要がありますか?どんな助けでも大歓迎です。
私は自分自身の質問に答えることを嫌いますが、上記のテストから、元の質問のように思えます。 –
これは本当に解決策ではありませんか? – Giorgio