参照微软官方文档:https://docs.microsoft.com/zh-cn/aspnet/core/tutorials/
记录下操作步骤
1 选择ASP.NET Core Web应用程序
2 选择Web应用程序(模型视图控制器).
记住不是web应用程序
3 新建控制器
namespace AspNetCoreMvc.Controllers
{
public class OrderController : Controller
{
// GET: /<controller>/
public IActionResult Index()
{
ViewData["PartyName"] = "张三";
ViewBag.Name = "李四";
Order order = new Order { PartyName = "王五", OrderTime = DateTime.Now, PhoneNumber = 123, QuantityOfJiuJing = 3, QuantityOfKouZhao = 5 };
return View(order);
}
}
}
4 新建视图
@{
ViewData["Title"] = "Index Test";
}
@model AspNetCoreMvc.Models.Order
<h2>index sss</h2>
<p>hello from our view Template!</p>
<p>@Model.PartyName</p>
<p>@ViewData["PartyName"]</p>
<p>@ViewBag.Name</p>
5 控制器传值给视图
使用ViewData/ViewBag/Model传值,可以看出能够传过来
这里发现一个问题:
如果viewbag和viewdata中传递的变量名都一样,那么最终传递到视图上的变量都是最后的变量值。
public IActionResult Index()
{
ViewBag.PartyName = "李四";
ViewData["PartyName"] = "张三";
Order order = new Order { PartyName = "王五", OrderTime = DateTime.Now, PhoneNumber = 123, QuantityOfJiuJing = 3, QuantityOfKouZhao = 5 };
return View(order);
}
视图显示的全都是张三
}
@model AspNetCoreMvc.Models.Order
<h2>index sss</h2>
<p>hello from our view Template!</p>
<p>@Model.PartyName</p>
<p>@ViewData["PartyName"]</p>
<p>@ViewBag.PartyName</p>