「作成」ビューに次のファイル入力タグがあります。
<input type="file" id="RequestFile" name="RequestFile"/>
@Html.ValidationMessage("RequestFile")
ViewModelには、次の対応するプロパティが含まれています。
[Required(ErrorMessage="Please select a file")]
public HttpPostedFileBase RequestFile { get; set; }
これは「作成」ビューでは正常に機能しますが、「編集」ビューではModelState.Isvalidがfalseになります。同じViewModelを使用して、ファイルを再度アップロードしたくないので、このフィールドを検証から除外したいと思います。
次のように入力タグを無効にしてみました。
<input type="file" id="RequestFile" name="RequestFile" disabled/>
これには無効な入力制御がありますが、検証は引き続き実行されます。
また、コントローラーにBindAttributeを適用しても機能しませんでした(この質問を参照)
理想的には(そうは思われないかもしれませんが)、これに対するサーバー側の解決策がある場合は、考えを投稿してください。クライアント側のちょっとしたトリックがあれば、教えてください!