0

誰かが HttpPostedFileWrapper オブジェクトのモデル検証を手伝ってくれますか?

モデル:

[Required(AllowEmptyStrings = false)]
public HttpPostedFileWrapper BlahFile { get; set; }

コントローラ:

   [HttpPost]
    public ActionResult LoadBlahData(BlahModel blahModel) 
    {
        if (!ModelState.IsValid)
            return RedirectToAction("Index");
    }

cshtml:

@using (Html.BeginForm("LoadBlahData", "Admin", FormMethod.Post, new { @class = "blahhForm", enctype = "multipart/form-data", id = "uploadBlah" }))
{
    <fieldset>
        <legend>Upload Blah Information</legend>
        @Html.LabelFor(x=>x.BlahFile, "Upload Blah file:")
        <input size="26" class="uploader" type="file" name="BlahFile" />
        <p><input class="ttButton" type="submit" value="Load Stuff" /></p>
    </fieldset>
}

問題:

  1. HTML に追加されている「data-val*」属性が表示されません。
  2. 目立たない検証をオフに設定しません (入力ボックスの赤い境界線)

ノート:

  1. モデルの他の項目は検証で正常に動作してい<input type="file"/>ますが、問題があると思われるのはその項目だけです。
  2. 正常にアクション メソッドに入ります (つまり、必要に応じて InputStream にアクセスできます)。
  3. すべてのスクリプトが正しく参照されている (通常のテキスト入力で動作する)

前もって感謝します、

4

2 に答える 2

0

この質問に出くわした他の人のためだけに、あなたもこれを行うことができます-

<%: Html.TextBoxFor(x => x.BlahFile, new { type = "file" }) %>
于 2011-07-20T15:08:28.203 に答える
0

要素にデータ属性を追加していません。のように追加します。

<input data-pk="1" size="26" class="uploader" type="file" name="BlahFile" />

の検証はサポートされていません。<input type="file"

于 2011-05-05T06:54:41.193 に答える