Form enctype=“multipart/form-data” ne fonctionne PAS

J'ai fait des tests de téléchargement d'une photo de MVC (la photo est envoyée en tant que paramètre d'un APPEL AJAX) contrôleur à l'aide d'un formulaire, et maintenant besoin de faire la même chose mais modifié:

Source d'origine qui fonctionne est:

<form action="/Home/Upload"  method="post" enctype="multipart/form-data">

<label for="photo">Photo:</label>
<input type="file" name="photo" id="photo" />

<input id="uploadbtn" type="submit" value="Upload" />
</form>

et de l'Action code du Contrôleur:

    [HttpPost]
    public ActionResult Upload(HttpPostedFileBase photo)
    {
        //Verify that the user selected a file
        if (photo != null && photo.ContentLength > 0)
        {
            //extract only the fielname
            var fileName = Path.GetFileName(photo.FileName);
            //store the file inside ~/App_Data/uploads folder
            var path = Path.Combine(Server.MapPath("~/C:/poze"), fileName);
            photo.SaveAs(path);

        }
        return Json(new { Success = true });
    }

Cela fonctionne, mais dans ce cas, ne fonctionne pas:

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

  <div class="control-group">
    <label class="control-label" for="photo">Photo:</label>
    <div class="controls">
        <input type="file" name="photo" id="photo" />
    </div>
  </div>
}

et de l'Action code est:

public ActionResult EditModule(INT ID, string Description, HttpPostedFileBase photo)
{
    if (photo != null && photo.ContentLength > 0)
    {
        //extract only the fielname
        var fileName = Name + ".png";
        //store the file inside ~/App_Data/uploads folder
        var path = Path.Combine(Server.MapPath("~/Content/Module Previews"), fileName);
        photo.SaveAs(path);
    }

    else
    {
        Status += "Error image";
        Success = false;
    }
}

Quand je debug EditModule, la valeur de la photo est NULLE.
Je suis sûr qu'il n'y a pas de problème avec le javascript et ajax appel.

Ce javascript and ajax call?

OriginalL'auteur Alynuzzu | 2013-08-21