我无法检索 Controller 中的值,它返回 null。请帮我找出我做错了什么。
下面是我的代码
索引.aspx
<form id="form1" method="post" action="/Sample/Index" enctype="multipart/form-data">
<div>
<input type="text" id="PcId" value=<%=Model.PcId %> /></div>
<input type="file" value="Browse" id="file"/>
<input type="submit" id="submit" value="Save"/></div>
</form>
在我的 Controller 中
[HttpPost]
public ActionResult Index(HttpPostedFileBase file)
{
string PcId = Request.Form["PcId"];
List<string> fileConfigData = new List<string>();
if (file != null && file.ContentLength > 0)
{
string FolderPath = mPath.GetFolderPath();
var fileName = Path.GetFileName(file.FileName);
string filePath = Server.MapPath(FolderPath + PcId) + "\\" + fileName;
file.SaveAs(filePath);
}
return view();
}
最佳答案
尝试将名称添加到您的输入字段:
<input type="text" id="PcId" name="PcId" value=<%=Model.PcId %>
根据 W3C 规范,每个表单输入元素都应该指定一个 name 属性。否则将不会处理该元素。
http://www.w3.org/TR/html401/interact/forms.html#successful-controls
关于c# - 请求 .Form 返回 null,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27165014/