【MVC】action向view传值

时间:2022-07-24 19:36:32

后台的数据怎么传到view上呢?有四种方式可以实现,但其实也可以说是只有一种。

 

1.ViewBag

2、ViewData

3、TempData

4、model

① controller里面的代码:

public class ElsaTestController : Controller
{
//
// GET: /ElsaTest/

public ActionResult Index()
{

//1、使用viewBag,动态数据类型
ViewBag.name = "Elsa's viewbag";
return View();
}

}

   在html里面如何获取?

@{
ViewBag.Title = "Index";
}

<h2>Elsa'test</h2>
<br> @ViewBag.name

 

下面对比一下,四种方式的区别,其实viewbag和viewdata可以共享数据的,但是他们依然是两种不同的属性。

public ActionResult Index()
{

//1、使用viewBag,动态数据类型
ViewBag.name = "Elsa's viewbag";

//2、使用viewDate这种键值对的方式

ViewData["test"] = "Elsa'test viewdata!";

//3、使用tempData
TempData ["temp"]="Elsa's tempdata";

//4、使用model

Models.test modeltest = new Models.test() { Name = "haha" };


return View(modeltest);



return View();
}

 

再积累一个小知识:action方法输出的返回值主要有3种:string、viewresult、jsonresult。