私は、次の問題に出くわした: 私はこのモデルASP MVCのアップロードヘルパー延長問題
public class Region
{
public int RegionID { get; set; }
public string RegionName { get; set; }
public HttpPostedFile CustomFile { get; set; }
}
を持っていると私はhereからカスタム拡張HTMLヘルパーメソッドを持っています。
<%using (Html.BeginForm("ModifyRegion", "Home", FormMethod.Post, new { enctype = "multipart/form-data" }))
{%>
<%: Html.TextAreaFor(x => x.RegionID, Model.RegionID)%>
<br />
<%: Html.TextAreaFor(x => x.RegionName, Model.RegionName)%>
<br />
<%: Html.FileBoxFor(x=>x.CustomFile, Model.CustomFile) %>
<input type="submit" />
それは私のコントローラのアクションに達するとCustomFileフィールドが空であるが、他のすべてのフィールドは、次のとおりです。
は今ビューで、私は次のコードを持っています適切に設定されます。 HttpPostedFileの代わりにCustomFileプロパティをstringに変更すると、ファイル名(たとえば "dog.jpg")が正しく取得されます。完全なHttpPostedFileファイルを正しく取得する方法はありますか? HttpPostedFile
を交換してみてください
<入力名= "CustomFile" タイプ= "ファイル" 値= "閲覧" />
それを試してみてください。 CustomFileプロパティはまだnullです。生成されるHTMLは次のとおりです。
<入力名= "CustomFile" タイプ= "ファイル" 値=/"参照"> –
@TamasIonut、無効なHTMLである2つのネストされたフォームがあるようです。外側のフォームを削除し、 'enctype =" multipart/form-data "属性を付けたフォームのみを残す必要があります。 –
ありがとうございました。私は、フォーム自体を宣言し、別のフォームに自分のビューに埋め込まれた部分的なビューを持っていました。 (私が推測するHTMLについてあまり気にしないでください;)))) –