2

これは機能していました。ある段階で。問題は、データベース「System.Web.HttpPostedFileWrapper」の画像のフィールドに次のテキストが表示されていることです。

次のコードはコントローラーからのものです。

  [HttpPost]
    public ActionResult Create(CarAdvert caradvert,
         HttpPostedFileBase picture1)
    {
        if (ModelState.IsValid)
        {

            if (picture1 != null)
            {
                string image1 = picture1.FileName;
                caradvert.Image1 = image1;
                var image1Path = Path.Combine(Server.MapPath("~/Content/Images"), image1);
                picture1.SaveAs(image1Path);
            }


             db.CarAdverts.Add(caradvert);
             db.SaveChanges();
             return RedirectToAction("Index");  
        }

このコードは、作成ビューからのものです。

@using (Html.BeginForm("Create", "UserCarAdverts", FormMethod.Post, new { enctype = "multipart/form-data" })) {

    @Html.ValidationSummary(true)
    <fieldset>
        <legend>CarAdvert</legend>
      <div class="editor-field">

        <input type="file" name="Image1" />
        </div>

        <p>
            <input type="submit" value="Create" />
        </p>
    </fieldset>
    }
4

1 に答える 1

2

HttpPostedFileBaseのコントローラーのパラメーターは、input type="file"と同じ名前である必要があります。どちらか:

[HttpPost]     
public ActionResult Create(CarAdvert caradvert,          
HttpPostedFileBase Image1)

また

<input type="file" name="picture1" />

それはそれをする必要があります

于 2012-04-04T22:23:39.110 に答える