ASP.net MVC 向子视图传递数据

使用 RenderPage

加载子视图

@RenderPage("~/Shared/Component/Dialog.cshtml", new { title = "Hello world!", content="Nani?" })

Razor子视图里使用 Page 来获取传递的数据

<div id="dialog" title="@Page.title" style="display: none;">
    <p>
        @Page.content
    </p>
</div>

使用 Html.Partial

加载子视图

@Html.Partial("Component/Dialog", null, new ViewDataDictionary { { "title", "Hello world!" }, { "content", "Nani?" } })

Razor子视图里使用 ViewBag 来获取传递的数据

<div id="dialog" title="@ViewBag.title" style="display: none;">
    <p>
        @ViewBag.content
    </p>
</div>

还有一种方法是指定子视图为强类型 List

使用RouteData,可以实现跨视图,跨Action参数传递

1.Action中设置路由参数

        public ActionResult Index()
        {
            this.ControllerContext.RouteData.Values.Add("time", "2104");
       //或者
            this.RouteData.Values.Add("time","2014");

            return View();
        }

2.视图中获取或设置路由参数

    <div>
        获取路由参数
    @this.Request.RequestContext.RouteData.Values["time"]
    </div>
    @{
        //重新设置路由参数
        this.Request.RequestContext.RouteData.Values["time"] = "2013";
    }
时间: 2024-11-07 04:27:47

ASP.net MVC 向子视图传递数据的相关文章

ASP.NET MVC之从控制器传递数据到视图四种方式

前言 本系列开始着手讲述ASP.NET MVC,也算是自己对基础的回顾以及进一步深入学习,保证每天发表一篇该系列文章,关于基本知识则不再叙述,园子有关文章不胜枚举,这一系列若有叙述不当或错误之处,欢迎指出以及批评. 前奏 新建基本项目在Models文件夹下定义如下类: public class Person { public int Id { get; set; } public string Name { get; set; } public string BlogAddress { get;

ASP.NET MVC之从控制器传递数据到视图四种方式(一)

前言 本系列开始着手讲述ASP.NET MVC,也算是自己对基础的回顾以及进一步深入学习,保证每天发表一篇该系列文章,关于基本知识则不再叙述,园子有关文章不胜枚举,这一系列若有叙述不当或错误之处,欢迎指出以及批评. 前奏 新建基本项目在Models文件夹下定义如下类: public class Person { public int Id { get; set; } public string Name { get; set; } public string BlogAddress { get;

Asp.Net Mvc 控制器与视图的数据传递

数据传递也就是控制器和视图之间的交互,比如在视图中提交的数据,在控制器怎么获取,或者控制器从业务层获得一些数据,怎么传递到视图中,让视图显示在客户端呢?带着这些疑问,我们接着看..        下面分别讲解asp.net mvc框架中有三种数据传递方式,分别是:ViewData,TempData,Model         ViewData:只能在一个动作方法中设置,在相关视图页面读取,说得再白一点就是只能在一个页面中使用.         例 在Act ion方法中设置:ViewData["

MVC中接受视图传递数据(表单)的方法

1.通过Request.Form读取表单数据        2.通过FormCollection读取表单数据        3.通过对象读取表单数据 首先定义一个UserModel类: public class UserModel { public int UserID { get; set; } //用户编号 public string UserName { get; set; } //用户名 public string Password { get; set; } //密码 } 视图代码如下

spring Mvc Web 编码相关 [model 到 视图传递数据] (九)

在某种编码环境,由bean注解的参数可能会发生乱码问题. 即可页面web.xml或其他地方都设备UTF-8, 但还是会有这样的问题. 首先不要使用model传到视图的数据. 第二,不要request.getParamer或request.getAttribute方式,这其他就有解码内置. 第三,首先对传进来的url,其中有汉字的进行escape加码,再传到目标端. 第四,经过escape的参数,使用request.getParameter或attribute获取值为 null spring Mv

MVC 5使用TempData Object跨视图传递数据

经过一系列显示数据的练习:<MVC 5使用ViewData(对象)显示数据>http://www.cnblogs.com/insus/p/3377178.html<MVC 5使用ViewData(模型)显示数据>http://www.cnblogs.com/insus/p/3377217.html<MVC 5使用ViewBag(对象)显示数据>http://www.cnblogs.com/insus/p/3377663.html<MVC 5 Strongly Ty

EF5(7) 后台使用SelectListItem传值给前台显示Select下拉框;mvc后台Action接收浏览器传值的4种方式; 后台Action向前台View视图传递数据的四种方式

一:后台使用SelectListItem 传值给前台显示Select下拉框 我们先来看数据库的订单表,里面有3条订单,他们的用户id对应了 UserInfo用户表的数据,现在我们要做的是添加一个Order控制器,显示订单列表,并且在修改订单的时候,把用户的id 用 select 下拉框显示出来,并且可以提交修改数据   1.1 我们通过比较原始的方法,来把数据 传递到前台后,前台使用  循环来显示 select 并且显示是哪个元素被选中 我们在前台的cshtml中,使用 @model 命令 指定

[渣译文] 使用 MVC 5 的 EF6 Code First 入门 系列:为ASP.NET MVC应用程序读取相关数据

这是微软官方教程Getting Started with Entity Framework 6 Code First using MVC 5 系列的翻译,这里是第六篇:为ASP.NET MVC应用程序读取相关数据 原文:Reading Related Data with the Entity Framework in an ASP.NET MVC Application 译文版权所有,谢绝全文转载--但您可以在您的网站上添加到该教程的链接. 在之前的教程中您已经完成了学校数据模型.在本教程中你将

[渣译文] 使用 MVC 5 的 EF6 Code First 入门 系列:为ASP.NET MVC应用程序更新相关数据

这是微软官方教程Getting Started with Entity Framework 6 Code First using MVC 5 系列的翻译,这里是第六篇:为ASP.NET MVC应用程序更新相关数据 原文: Updating Related Data with the Entity Framework in an ASP.NET MVC Application 译文版权所有,谢绝全文转载--但您可以在您的网站上添加到该教程的链接. 在之前的教程中您已经成功显示了相关数据.在本教程中