ASP.NET MVC 框架中,控制器间的数据传递可以通过多种方式实现。以下是其中几种方法的示例。
可以使用 TempData 字典在控制器之间传递值。TempData 是一个字典,能够在两个请求之间存储和读取一个项目的值。
第一个控制器:
public ActionResult Index() { TempData["Name"] = "John"; return RedirectToAction("About"); }
第二个控制器:
public ActionResult About() { var name = TempData["Name"]; return View(); }
通过注入数据到 View 的 ViewBag 或 ViewData 字典中,在控制器之间传递数据。
public ActionResult Index() { ViewBag.Name = "John"; return RedirectToAction("About"); }
public ActionResult About() { var name = ViewBag.Name; return View(); }
可以通过将数据存储到全局变量中,实现控制器间的数据传递。
public class GlobalData { public static string Name { get; set; } }
public ActionResult Index() { GlobalData.Name = "John"; return RedirectToAction("About"); }
public ActionResult About() { var name = GlobalData.Name; return View(); }
以上方法都可以在控制器之间传递数据,具体使用哪种方式取决于应用程序和业务要求。