0

_CreateOrEditPartialテキストとファイルのアップロードを含む次の部分ビューがあります:-

@model TMS.Models.DataCenter
@* This partial view defines form fields that will appear when creating and editing entities *@
@Html.AntiForgeryToken()

<div>
    <span class="f">Name </span>    
    @Html.EditorFor(model=>model.Name)
    @Html.ValidationMessageFor(model => model.Name)
</div>
<div>
    <span class="f">Data Center Picture </span>    
    <input type="file" name="DataCenterfile" />
</div>

および次のメイン ビュー:-

@using (Html.BeginForm("Create","DataCenter", FormMethod.Post))
{
    @Html.ValidationSummary(true)
    @Html.Partial("_CreateOrEdit", Model)
    <input type="submit" value="Create" class="btn btn-primary"/>
}

次の ActionMethod を呼び出します:-

[HttpPost]
[ValidateAntiForgeryToken]
[CheckUserPermissions(Action = "Edit", Model = "DataCenter")]
public ActionResult Create(DataCenter dc, HttpPostedFileBase DataCenterfile)
{
    // Verify that the user selected a file
    if (DataCenterfile != null && DataCenterfile.ContentLength > 0)
    {
        // extract only the fielname
        var fileName = Path.GetFileName(DataCenterfile.FileName);
        // store the file inside ~/App_Data/uploads folder
        var path = Path.Combine(Server.MapPath("~/App_Data/uploads"), fileName);
        DataCenterfile.SaveAs(path);
    }

しかし、datacenterfileは常にnullになります..この問題の原因について誰かアドバイスできますか? ありがとう

4

1 に答える 1