Asp.net MVC 控制器向页面传值study

这里我以为Home控制器的demo1方法和demo1视图作为演示。
在这里插入图片描述

主要用三种方法

  • 1 ViewDate
  • 2 VIewBag
  • 3 TempDate
    下面进行一一介绍。

1、ViewDate

  • 使用方式:通过键值对的形式传值,取值时通过键进行取值,所取的值是object类型,需要进行类型转化。
  • 使用场景:向单个页面传值。
  • 例如:
			ViewData["myname"] = "张三";
            ViewData["mysex"] = "男";
            ViewData["myage"] = "30";

2、ViewBag

  • 使用方式:通过ViewBag定义一个名称,通过名称类取值,取值不需要进行类型转化。
  • 使用场景:向单个页面传值。
  • 例如:
             ViewBag.name= "李四";
            ViewBag.sex = "女";
            ViewBag.age = "20";

示例:

1.HomeController.cs控制器


        public ActionResult demo1()
        {
            //ViewDate
            ViewData["myname"] = "张三";
            ViewData["mysex"] = "男";
            ViewData["myage"] = "30";

            //ViewBag
             ViewBag.name= "李四";
            ViewBag.sex = "女";
            ViewBag.age = "20";
            return View();

        }
    }

2.demo1.cshtml视图取值


@{
    ViewBag.Title = "demo1";
}
@{
    //ViewData取值
    string myname = ViewData["myname"].ToString();
    string mysex = ViewData["mysex"].ToString();
    string myage = ViewData["myage"].ToString();

    ViewBag取值
    string name = ViewBag.name;
    string sex = ViewBag.sex;
    string age = ViewBag.age;
}
<h2>demo1</h2>
<h3>ViewData取值</h3>
<ul>
    <li>@myname</li>
    <li>@mysex</li>
    <li>@myage</li>
</ul>

<hr />
<h3>ViewBag取值</h3>
<ul>
    <li> @name</li>
    <li>@sex</li>
    <li>@age</li>
</ul>

在这里插入图片描述

3、TempDate

  • 使用方式:和ViewDate类似,使用键值对的形式传值,通过键进行取值。
  • 使用场景:向单个页面传值,也可以跨页传值,但是一旦TempDate被去过值就释放。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值