在将模型从视图填充到控制器时获取外键
本文关键字:控制器 获取 填充 模型 视图 | 更新日期: 2023-09-27 18:25:49
我认为这是一些基本的东西,但我无法理解。非常感谢您的帮助。
假设我们有两张桌子:电视和节目。节目通过TvId字段连接到电视台。
现在,在我们的MVC应用程序中,我们显然拥有匹配这两个表的模型。现在我需要添加一个新的节目!
我转到一个网络表单,选择一个电视节目,并想添加一个节目。
当我在使用Shows模型的"New show"表单上时……我如何访问并传递将为其创建此节目的TvId?
我将所有数据字段绑定到Show模型,但不知道如何将新节目连接到其"电视"。
在你的控制器中,你可以做一些事情,比如创建一个名为ShowWithTv的新模型,比如这样:
public class ShowWithTv {
public Show { get; set; }
public TV { get; set; }
}
public ActionResult Index(int ID) {
var data = new ShowWithTV();
data.Show = new Show();
data.TV = new TV().LoadFromId(ID) // put code here to load TV from ID
return View(data);
}
然后用Show详细信息(可能为空,但可能有默认值)和TV.填充此信息
然后在视图中,将顶部的"继承"更改为新的ShowWithTv模型。
然后,您将有权在视图中执行以下操作:型号.TV.{此处属性}