MVC中的控制器向视图传值有四种方式分别是
1 ViewDate 2.ViewBag 3.TempDate 4.Model
下面分别介绍四种传值方式
首先先显示出控制器中的代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc; namespace WebApplication1.Controllers
{
public class DefaultController : Controller
{
// GET: Default
/// <summary>
/// 1、提供视图模型对象
/// </summary>
/// <returns></returns>
public ActionResult Index()
{
DateTime date = DateTime.Now;//一个对象作为View方法的参数传递给视图
return View(date);
}
/// <summary>
/// 2、使用ViewBag(视图包)传递数据
/// </summary>
/// <returns></returns>
public ActionResult Edit()
{
//ViewBag 允许在一个动态的对象上定义任意属性,并在视图中访问它.这个动态的对象可以通过Controller.ViewBag属性访问它.
ViewBag.Name = "名字代号";
ViewBag.Age = "";
ViewBag.Hobby = "打篮球,打羽毛球等";
ViewBag.StrDate = DateTime.Now;
return View();
}
/// <summary>
/// 3、 使用View Data传递数据
/// </summary>
/// <returns></returns>
public ActionResult Detail()
{
//在MVC3.0之前,主要是通过这种方式传递数据,它是通过用 ViewDataDictionary类实现的,而不是动态的对象.
//ViewDataDictionary类是类似标准"键/值"集合,并通过Controller类的ViewData属性进行访问的.这个方法,在视图中需要对对象进行转换.
ViewData["Message"] = "Hello,World !";
ViewData["Date"] = DateTime.Now;
return View();
}
//使用TempDate来传递数据
public ActionResult tempdates()
{
//TempData 他和viewdate的用法差不多但是他比viewdate的好处是他可以做到夸不同页面之间的传值
TempData["Message"] = "名字信息";
TempData["Age"] = "";
TempData["Hobby"] = "打篮球,打羽毛球等";
TempData["Timess"] = DateTime.Now;
return View();
}
}
}
这个是第一个控制器中的方法传递的数据
<div> @{
ViewBag.Title = "Index";
}
<h1>当前时间</h1>
<h2>@(((DateTime)Model).Date)</h2>
<h2>@(((DateTime)Model).DayOfYear)</h2><br />
</div>
resault:
当前时间
2019/4/2 0:00:00
92
1.使用ViewBag
<div>
@{ ViewBag.Title = "Edit"}
<h1>@ViewBag.Name</h1>
<h2>@ViewBag.Name</h2>
<h2>@ViewBag.Age</h2>
<h2>@ViewBag.Hobby</h2>
<h2>@ViewBag.StrDate</h2>
</div>
resault:
名字代号
22
打篮球,打羽毛球等
2019/4/2 15:59:26
2.View Data的用法
<div>
@{
ViewBag.Title = "Detail";
}
<h2>@ViewData["Date"]</h2>
<h2>@ViewData["Message"]</h2>
<h2>@view</h2>
</div>
resault:
hello World
2019/4/2 15:59:26
3.TempData的用法
<div>
@{ ViewBag.Ttle = "tempdates";} <h1>@TempData["Message"]</h1>
<h1>@TempData["Age"] = </h1>
<h1>@TempData["Hobby"] </h1>
<h1>@TempData["Timess"]</h1> </div>
resault:
名字代号
22
打篮球,打羽毛球等
2019/4/2 15:59:26
4,model的用法如果有想知道的可以联系我.