【发布时间】:2014-05-29 17:35:22
【问题描述】:
我想在下拉列表中获取所选项目的值。我正在使用以下代码将文件保存到数据库中:
public ActionResult UploadDoc(IEnumerable<HttpPostedFileBase> files)
{
foreach (var file in files)
{
if (file != null && file.ContentLength > 0)
{
byte[] data = new byte[file.ContentLength];
file.InputStream.Read(data, 0, file.ContentLength);
Document doc = new Document
{
UploadedOn = DateTime.Now,
MimeType = file.ContentType,
UserName = User.Identity.Name,
Data = data,
FromLanguage = 1,
ToLanguage = 2
};
dbContext = new MedicalDb();
dbContext.Documents.Add(doc);
dbContext.SaveChanges();
}
}
return RedirectToAction("Index");
}
但是,我还想从下拉列表中获取选定的值,以便填充文档的 FromLanguage 和 ToLanguage 属性。我想我需要一个视图模型,但不知道该怎么做。文档上传的新行是使用 jQuery 添加的,ddl 的名称是“ddlFromLanguage1”、“ddlFromLanguage2”、“ddFromLanguage3”和“ddlToLanguage1”、“ddlToLanguage2”、“ddlToLanguage3”等。在此先感谢您的帮助。
<form action="UploadDoc" method="post" enctype="multipart/form-data">
<table id="tblUploadDocs">
<tr id="row1">
<td><input type="file" name="files" id="file1" /></td>
<td>Bu dilden</td>
<td>@Html.DropDownList("ddlFromLanguage1", ViewBag.Languages as SelectList)</td>
<td>şu dile çevrilecek</td>
<td>@Html.DropDownList("ddlToLanguage1", ViewBag.Languages as SelectList)</td>
</tr>
</table>
<br />
<a href="javascript:addRow();" style="margin:10px 0;">Yeni dosya ekleyin</a>
<input type="submit" />
</form>
【问题讨论】:
-
我觉得你的问题不够清楚,还要检查Here 以使用带有选择列表的视图模型...
标签: asp.net-mvc viewmodel html.dropdownlistfor selectlist