将数据/模型和路由参数传递给控制器
本文关键字:参数传递 控制器 路由 数据 模型 | 更新日期: 2023-09-27 18:17:03
我有这样一个控制器:
public ActionResult Calculate(Rankings rank, int id)
{
//do something on rank depends of id
return View(rank);
}
我必须通过'rank'和'id'从视图'计算'到控制器,对数据的工作取决于id和返回到这个相同的视图与更新的模型'rank'?计算视图是一个强类型的视图与排名(排名模型)。
我很感激你的帮助。您可以简单地将id存储在Rankings对象中,或者创建一个包含Rankings和id属性的新视图模型对象吗?
我倾向于选择存储视图工作所需的所有内容的视图模型对象。换句话说,一个对象包含了排名和id。
就像这样:
public class CalculateViewModel
{
public Rankings Rankings { get; set; }
public int Id { get; set; }
}
在控制器中创建它,设置属性,并将其传递给计算视图。
最简单的方法(这是我不会做的)是在你的控制器中使用ViewData,像这样:
ViewData["id"] = id;