• MVC中从控制器中获取状态数据的方法


       控制器中获取状态数据的方法

       1.从上下文对象中获取状态数据:

              可以通过一系列的属性可以方便的访问到和请求相关的数据,这些属性包括 Request、Response、RouteData、HttpContext 和 Server,每一个都提供了请求相关的不同类型的信息。下面列出了最常的上下文对象:

        

    2. 使用 Action 方法参数获取状态数据:

            注释:易读性强,也方便进行单元测试,Action 方法的参数不允许使用 ref 和 out 参数

    3.显式的调用框架的模型绑定(Model Binding)特性:

       MVC中的ActionResult对象的介绍:ActionResult 是描述 Action 方法执行结果的对象,它的好处是想返回什么结果就指定对应的返回对象就行,不用关心如何使用Response对象来组织和生成结果。ActionResult 是一个命令模式(把一个请求或者操作封装在命令对象中)的例子,这种模式通过存储和传递对象来描述操作。

      MVC中从Action向View中传递参数的几种方式:

    •  通过 View Model 对象传递数据给View
    • 使用ViewBag、ViewData 和 TempData的相关属性

      ViewBag、ViewData 和 TempData的区别及相同点:

         相同点:都是存储少量的数据

         区别:   a. ViewBag,是一个动态(dynamic)的弱类型,在程序运行的时候解析,是 MVC3 中新增的特性,只在当前的View中有效;

                     b.ViewData,是一个字典集合,也是只在当前View有效,性能比 ViewBag 高,但是使用的时候需要类型转换;

                     c.TempData,也是字典集合,一般用于两个请求之间临时缓存内容或页面间传递消息,保存在 Session 中,使用完以后则从 Session 中被清除。

       注释:一般在当前 View 中使用 ViewBag 或 ViewData,在两个请求之间传递临时数据用 TempData。由于 TempData 被使用后即被释放,所以如果要二次使用 TempData 中的数据就需要将其存到其他变量中。

        

  • 相关阅读:
    「CF1051F」The Shortest Statement
    「CF911F」Tree Destruction
    「HNOI/AHOI2018」游戏
    「CF859E」Desk Disorder
    「CF858F」 Wizard's Tour
    「CF894E」 Ralph and Mushrooms
    「NOIP2018」赛道修建
    「POI2010」Bridges
    常见神经网络
    数字图像处理笔记2.22
  • 原文地址:https://www.cnblogs.com/erpNet/p/3955569.html
Copyright © 2020-2023  润新知