码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • .NET MVC第三章、三种传值方式


    .NET MVC第三章、三种传值方式

    目录

    .NET MVC第三章、三种传值方式

    ViewData

    传递方法

    前台接收

    ViewData测试

    ViewBag

    传递方法

    前台接收

    ViewBag测试

    TempData·支持夸函数

    传递方法

    前台接收

    ​编辑TempDate测试


    ViewData

    ASP.NET MVC 5源代码中ControllerBase类中ViewData属性的定义:

    public ViewDataDictionary ViewData { get; set; }

    可以看到是字典类型的,属性值object类型

    public class ViewDataDictionary : IDictionary{}

    传递方法

    ViewData["msg"] = "key_value的方式传值";

    前台接收

    @ViewData["msg"]

    直接获取即可,很方便。

    ViewData测试

    可以看到后台传递过来的msg信息。

    ViewBag

    ViewBag对象是ASP.NET MVC 3提供的功能,它被声明为一个dynamic类型。

    ASP.NET MVC 5源代码中声明如下:
    dynamic类型的变量都会编译为object类型的变量。因此,dynamic类型只存在于编译时刻,而不存在于运行时刻。

    1. [Dynamic]
    2. public dynamic ViewBag { get; }

    传递方法

    ViewBag.Info = "我是通过ViewBag传递的值";

     

    前台接收

    @ViewBag.Info

     

    ViewBag测试

    传递以及取值成功

    TempData·支持夸函数

    ViewData属性与ViewBag属性无法跨Action方法传递数据,当需要在多个Action方法之间传递数据时,可采用TempData属性。

    ASP.NET MVC 5源代码中声明如下:

    public TempDataDictionary TempData { get; set; }
    
    TempDataDictionary类的定义如下:
    public class TempDataDictionary: IDictionary<string, object>{}
    

    注:TempData属性是将数据保存在Session中。

    传递方法

    TempData["cors"] = "TempData支持夸函数传参。";

    为了测试夸方法,需要单独创建一个页面。 

     

    页面位置

    前台接收

    @TempData["cors"]

    TempDate测试

    可以看到传递成功。

     

  • 相关阅读:
    546、Zookeeper详细入门教程系列 -【Zookeeper内部原理】 2022.11.06
    STM32 + CT1711超级准的人体测温方案
    MacOS国产单片机正版Jlink调试配置和eclipse开发配置
    vue双table可拖拽样式(上)
    Nexus私服,使用Maven上传到仓库时提示xx/metadata.xml响应码 502
    能源消耗监测管理系统:实现企业用能定额、降低成本节能管理
    深度学习方法在糖尿病视网膜病变诊断中的应用
    IT创业项目 - 跟淘宝商城合作网赚项目,赚多少你说了算!
    vue+asp.net Web api前后端分离项目发布部署
    java实现自己的trim效果---去掉首尾指定字符
  • 原文地址:https://blog.csdn.net/feng8403000/article/details/126798568
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号