Parámetro nulo utilizando Ajax.BeginForm iso Html.BeginForm

Tengo un método de controlador que maneja una carga de archivo:

AcceptVerbs(HttpVerbs.Post)]
public ActionResult FileUpload(int id, HttpPostedFileBase uploadFile)
{
    if (uploadFile != null && uploadFile.ContentLength > 0 && ...)
    ...
}

Cuando uso Html.BeginForm todo funciona bien. Reemplazar Html.BeginForm con Ajax.BeginForm da como resultado un valor nulo para uploadFile (de 2do parámetro del método anterior):

<div id="ajaxDocumentUpload">
@{ using (Ajax.BeginForm("FileUpload", "ProjectDocument", FormMethod.Post, 
           new AjaxOptions { OnSuccess = "UploadSuccess" }, 
           new { enctype = "multipart/form-data" }))
  {
    <div>
        <input type=file accept="image/gif, image/jpeg" name="uploadFile">     
    </div>
    <div>
        <input type="hidden" name="id" id="id" value="@Model.ProjectId"/>
    </div>

    <input id=btnUpdateAttachment type=submit value="Upload">
  } 
}
</div>

¿Alguna idea de lo que está mal? ¡Gracias de antemano por cualquier ayuda!

Respuestas a la pregunta(2)

Su respuesta a la pregunta