제출을 클릭하면 file
매개 변수가 null입니다. 그것은 갈등과 파일 이름으로 FileViewModel 객체로 파일 속성을 결합하려고 바인더의 이름을 지정할 것양식 제출시 모델이 null입니다.
@model MyProject.Controllers.Admin.FileViewModel
@{
ViewBag.Title = "Create";
Layout = "~/Views/Shared/_BackOfficeLayout.cshtml";
}
@using (Html.BeginForm("Create", "Files", FormMethod.Post, new { enctype = "multipart/form-data" }))
{
<fieldset>
<legend>Create</legend>
<div class="editor-label">
@Html.LabelFor(model => model.File)
</div>
<div class="editor-field">
@Html.TextBoxFor(model => model.File, new { type = "file" })
@Html.ValidationMessageFor(model => model.File)
</div>
<p>
<input type="submit" value="Create" />
</p>
</fieldset>
}
<div>
@Html.ActionLink("Back to List", "Index")
</div>
Shiat! 나는 그것이 효과가있을 것이라고 믿지 않았지만 그렇게했다. 실제로 이것이 실제로 일어난 이유는 무엇입니까? – Shimmy
@Shimmy 그것은 'File' 속성을'file' 이름으로'FileViewModel' 객체에 바인드하려고하는 이름 충돌과 바인더입니다. 그래서'null'을 얻습니다. POST 이름은 대소 문자를 구분하지 않습니다. – webdeveloper
당신은 착한 사람입니다! 잘 잡으세요! – Shimmy