【发布时间】:2013-02-19 16:43:01
【问题描述】:
在“创建”操作中,我可以将信息添加到编辑器字段并将它们保存到 Table1,但是,对于其中一个字段,我想要一个下拉列表,从 Table2 中的列填充,然后可以选择并保存到Table1 中的一个字段,取决于选择。我已经设法在 Table2 的下拉表中显示信息,但没有将其传递给 Table1
模型1:
public int id { get; set; }
public string JobNo { get; set; }
public string DelNo { get; set; }
public Nullable<int> DeptToPack { get; set; }
public string PackNo { get; set; }
public Nullable<decimal> TargetHrs { get; set; }
public Nullable<System.DateTime> PackingDate { get; set; }
public virtual Table2 Table2{ get; set; }
模型 2:
public Table2()
{
this.Table1= new HashSet<Table1>();
}
public int id { get; set; }
public string Dept { get; set; }
public virtual ICollection<Table1> Table1{ get; set; }
组合模型:
public class Combined
{
public Table1 Table1 { get; set; }
public Table2 Table2{ get; set; }
}
视图当前显示所有可以使用 SaveChanges() 编辑并保存到数据库的字段的文本编辑器;在 HomeController 上,在 Create 操作下
创建动作
public ActionResult Create()
{
IEnumerable<SelectListItem> items = _db.Table2
.Select(c => new SelectListItem
{
Value = c.Dept,
Text = c.Dept
});
ViewBag.Dropdownlist = items;
return View();
}
[HttpPost]
public ActionResult Create(Table1 table1)
{
if (ModelState.IsValid)
{
_db.Table1.Add(table1);
_db.SaveChanges();
return RedirectToAction("Index");
}
return View(table1);
}
视图显示来自 table1 的信息,以及来自 table2 的一个字段。我似乎在使用 @Html.DropDownList 元素时遇到了问题
我目前有(下)显示数据,但无法处理到Table1
@Html.DropDownList("Table1.Field1", (IEnumerable<SelectListItem>) ViewBag.DropDownList)
希望图像能更好地解释它,填充的输入框将保存到 Table1 除了 1 个字段,它是来自 Table2 列 {InfoToPass} 的下拉列表,其中可以选择 4 个选项中的 1 个,然后该值以及所有其他输入将保存到 Table1
【问题讨论】:
-
您找到解决问题的方法了吗?如果可以,可以分享一下吗?
-
我差不多搞定了,只是做一些调整,然后我会发布我的答案
标签: c# asp.net-mvc razor html-helper