在ASP.NET MVC中,可以通过使用ViewBag、ViewData、TempData和模型对象来向另一个视图传递数据。以下是每种方法的示例代码:
public ActionResult FirstView()
{
ViewBag.Message = "Hello from first view!";
return View();
}
在第二个控制器操作中,通过从ViewBag中检索数据来传递给第二个视图:
public ActionResult SecondView()
{
string message = ViewBag.Message;
return View((object)message);
}
在第二个视图中,您可以像这样访问传递的数据:
@model string
@Model
public ActionResult FirstView()
{
ViewData["Message"] = "Hello from first view!";
return View();
}
在第二个控制器操作中,通过从ViewData中检索数据来传递给第二个视图:
public ActionResult SecondView()
{
string message = ViewData["Message"] as string;
return View((object)message);
}
在第二个视图中,您可以像这样访问传递的数据:
@model string
@Model
public ActionResult FirstView()
{
TempData["Message"] = "Hello from first view!";
return View();
}
在第二个控制器操作中,通过从TempData中检索数据来传递给第二个视图:
public ActionResult SecondView()
{
string message = TempData["Message"] as string;
return View((object)message);
}
在第二个视图中,您可以像这样访问传递的数据:
@model string
@Model
public ActionResult FirstView()
{
MyModel model = new MyModel();
model.Message = "Hello from first view!";
return View(model);
}
在第二个控制器操作中,通过将模型对象传递给第二个视图来传递数据:
public ActionResult SecondView(MyModel model)
{
string message = model.Message;
return View((object)message);
}
在第二个视图中,您可以像这样访问传递的数据:
@model string
@Model
请注意,以上示例假设您有两个视图分别称为FirstView和SecondView,并且有一个名为MyModel的模型类,其中包含一个名为Message的属性。根据您的实际应用程序,您可能需要调整代码以适应您的情况。