有时候一直困扰着我。我可以看到很多示例,其中操作以多种不同方式从View(POST发送的数据)读取数据。特别是在本主题on handling multiple submit buttons中,例如:
从视图中读取模型:
public ActionResult Edit(Model model)
{
}
或仅ID
然后TryUpdateModel
以某种方式知道要更新的内容
public ActionResult Edit(int? PropertyID)
{
//...
Model modelToEdit = dbContext.Objects.Find(PropertyID);
if(TryUpdateModel(modelToEdit)
{
}
}
有时程序员会从submit
按钮读取字符串,我猜:
public ActionResult Edit(string button1, string button2 /*, ... */)
{
}
或在控制器中接收字符串和模型
public ActionResult Edit(string button1, Model model)
{
}
控制器如何“知道”该ID是必须使用的ID等等。如果有人可以解释View和控制器之间究竟发生了什么,我将不胜感激。这就像模型是为我们发送的,这取决于我们如何接收它!
另一个问题是为什么一些程序员只读ID而其他程序员读整个对象等。