MVC 3 upload de fichier et le modèle de liaison

J'ai un formulaire d'upload qui fonctionne, mais je voudrais faire passer des informations de modèle pour ma base de données pour enregistrer le fichier avec un nom différent bien sûr.

Voici mon Rasoir vue:

@model CertispecWeb.Models.Container

@{
  ViewBag.Title = "AddDocuments";
}

<h2>AddDocuments</h2>

@Model.ContainerNo

@using (Html.BeginForm("Uploadfile", "Containers", FormMethod.Post, 
            new { enctype = "multipart/form-data" }))
{
    <input type='file' name='file' id='file' />
    <input type="submit" value="submit" />
}

Voici mon Controller:

[HttpPost]
public ActionResult Uploadfile(Container containers, HttpPostedFileBase file)
{
     if (file.ContentLength > 0)
     {
        var fileName = Path.GetFileName(file.FileName);
        var path = Path.Combine(Server.MapPath("~/App_Data/Uploads"),
                       containers.ContainerNo);
        file.SaveAs(path);
     }

     return RedirectToAction("Index");
}

Le modèle de l'information n'est pas transmise au contrôleur. J'ai lu que je pourrais avoir besoin de mettre à jour le modèle, comment pourrais-je faire cela ?

InformationsquelleAutor Francis | 2011-01-24