我想提交一個表單包含文件上傳使用C#ASP MVC與實體。我的問題是該文件始終爲空。C#中的文件上傳與ASP.NET MVC沒有剃鬚刀
的觀點:
@model Com.Work.With.Me.Models.ObjVM
<!DOCTYPE html>
<html>
<head>
<title>Test</title>
</head>
<body>
<form id="formObj" action="AddMe">
<input type="file" id="objPdfFile" name="Obj.PdfFile" />
</select>
<input type="text" id="objName" name="Obj.Name" />
</form>
視圖模型:
public class ObjVM
{
public string Name{ get; set; }
public HttpPostedFileBase PdfFile{ get; set; }
public ObjVM()
{
}
}
控制器:
public ActionResult AddMe(ObjVM obj)
{
//her obj.Name is fine
//but obj.PdfFile is null
return View();
}
任何想法?
您是否已將頭文件中的enctype設置爲'multipart/form-data',並以此方式對內容進行編碼? (https://stackoverflow.com/a/4526286/1838819)。這也需要在客戶端都是HTTP POST,並且需要用[HttpPost]標記動作 – DiskJunky
你是對的! – jBravo
爲什麼你在標題中說「沒有剃鬚刀」?你清楚地使用剃刀。 – mason