Type というフィールドが必要なビューモデルがあります。
[Required]
public string Type{ get; set; }
このビューモデルを別のページで使用していますが、タイプが必要ない場合もあります。Type を Required にしないようにページに指示する方法を考えています。
私が試したのは
@Html.HiddenFor(model => model.Type)
しかし、それはうまくいきませんでした。
Type というフィールドが必要なビューモデルがあります。
[Required]
public string Type{ get; set; }
このビューモデルを別のページで使用していますが、タイプが必要ない場合もあります。Type を Required にしないようにページに指示する方法を考えています。
私が試したのは
@Html.HiddenFor(model => model.Type)
しかし、それはうまくいきませんでした。
何らかの理由で同じビュー モデルを使用する場合は、フールプルーフライブラリの使用を検討してください。フールプルーフは、ASP.NET MVC で提供されるデータ注釈の検証を拡張することを目的としています。初期の取り組みは、偶発的な検証を追加することに重点を置いています。
既定の必須属性は次のとおりです。
[RequiredIf]
[RequiredIfNot]
[RequiredIfTrue]
[RequiredIfFalse]
[RequiredIfEmpty]
[RequiredIfNotEmpty]
[RequiredIfRegExMatch]
[RequiredIfNotRegExMatch]
Foolproof の優れた点は、目立たない手法をそのまま使用してクライアント側の検証をサポートすることです。
だからあなたの場合
[RequiredIfTrue("ShouldValidateType"]
public string Type{ get; set; }
public bool ShouldValidateType {get; set;}
プロパティ タイプは、ShouldValidateType が true の場合にのみ検証されます。