MVC 子对象数据传递

1、接受参数

  

1         public ActionResult Address(User user)
2         {
3             return View();
4         }

2. User对象类型

 1     public class User
 2     {
 3         public string Name { get; set; }
 4
 5         /// <summary>
 6         /// 子对象(单个)
 7         /// </summary>
 8         public Address Address { get; set; }
 9
10         /// <summary>
11         /// 子对象(集合)
12         /// </summary>
13         public List<Nick> Nicks { get; set; }
14     }
15
16     public class Address
17     {
18         public string City { get; set; }
19
20         public string Email { get; set; }
21     }
22
23     public class Nick {
24         public string Name { get; set; }
25     }

3.页面传参

@*错误的传参*@
<a href="@Url.Action("Address", new MvcApplication.Models.User
    {
         Name ="小",
        Address = new MvcApplication.Models.Address { City ="成都", Email="[email protected]" }
    })">点击测试1</a>
<br />

@*正确的url传参*@
<a href="/Home/Address?Name=小&Address.Email=11&Nicks[0].Name=测试">点击测试2</a>

@*正确的表单提交*@
<form action="/Home/Address" method="get">

    <input type="hidden" name="Name" value="小" />
    <input type="hidden" name="Address.Email" value="11" />
    <input type="hidden" name="Nicks[0].Name" value="测试" />
    <input type="submit"  value="测试3"/>
</form>
时间: 2024-10-06 06:42:45

MVC 子对象数据传递的相关文章

MVC总结--数据传递

View->Controller 1.传统方式,Get方式提交,在Controller中获得客户端请求: string Name = Request["name"]; string Id=Request .QueryString ["id"]; 2.超链接方式 在超链接中传参,改进了原来的<a></a> <%:Html .ActionLink ("链接","Index","Home

ASP.NET MVC 基础--------数据传递

前言 大家好,我是大成子.之前有朋友去面试,面试官问了一个这样的题:在http://ASP.NET MVC 中视图和控制器之间有哪几种数据传递方式?今天大成子就带大家一起来探讨C(控制器)向V(视图)[前端视图向控制器发送请求传输的数据的方式本次这里不做赘述了,有机会再做分析和分享]传输数据有哪几种方式.(ViewData/ViewBag/TempData/model) ViewData 第一个是ViewData,它用来存储存储String Key/Object的值.它是一个继承自ViewDat

MVC中数据传递 ViewBag的使用

ViewBag MVC3中 ViewBag.ViewData和TempData的使用和区别 在MVC3开始,视图数据可以通过ViewBag属性访问,在MVC2中则是使用ViewData.MVC3中保留了ViewData的使用.ViewBag 是动态类型(dynamic),ViewData 是一个字典型的(Dictionary). ViewBag和ViewData的区别: ViewBag 不再是字典的键值对结构,而是 dynamic 动态类型,它会在程序运行的时候动态解析.所以在视图中获取它的数据

ASP.NET MVC 中将数据从View传递到控制器中的三种方法(表单数据绑定)

转自:http://www.cnblogs.com/zyqgold/archive/2010/11/22/1884779.html 在ASP.NET MVC框架中,将视图中的数据传递到控制器中,主要通过发送表单实现的.具体使用中,主要使用以下三种方法. 1.通过Request.Form读取表单数据        2.通过FormCollection读取表单数据        3.直接读取表单数据对象 下边是我学习这些东西时的一点总结 1.通过Request.Form读取表单数据      首先定

mvc中的几个数据传递

1.ViewData对象 ViewBagData是一种字典集合数据同时属于视图基类和控制器基类的属性. 实例: //控制器 public class HomeController:Controller { public ActionResult Index() { ViewData["data"]="Hello asp.net"; return View(); } } 视图: <h1><%=ViewData["data"]%&g

七天学会ASP.NET MVC (二)——ASP.NET MVC 数据传递

注:本文为学习摘录,原文地址为:http://www.cnblogs.com/powertoolsteam/p/MVC_two.html Controller与 View之间的值传递 在上一节的实验二中已经创建了静态View.然而在实际使用情况下,View常用于显示动态数据.在实验三中们将在View中动态显示数据. View将从从Controller获得Model中的数据. Model是MVC中 表示业务数据的层. 实验3 ——使用View数据 ViewData相当于数据字典,包含Control

ASP.NET MVC中Controller与View之间的数据传递总结

在ASP.NET MVC中,经常会在Controller与View之间传递数据,因此,熟练.灵活的掌握这两层之间的数据传递方法就非常重要.本文从两个方面进行探讨: Ø Controller向View传递数据 Ø View向Controller传递数据 一.Controller向View传递数据 1.       使用ViewData传递数据 我们在Controller中定义如下: ViewData[“Message”] = “Hello word!”; 然后在View中读取Controller中

ASP.NET MVC 之控制器与视图之间的数据传递

今天,我们来谈谈控制器与视图之间的数据传递. 数据传递,指的是视图与控制器之间的交互,包括两个方向上的数据交互,一个是把控制器的数据传到视图中,在视图中如何显示数据,一个是把视图数据传递到控制器中, 如何在控制器中获取,处理这些数据. ASP.NET MVC 中所有控制器都继承Controller类,而Controller又继承自ControllerBase,而ControllerBase下又包含ViewData以及TempData视图数据字典. 一,使用ViewData传递数据 ViewDat

ASP.NET MVC (二)——ASP.NET MVC 数据传递

一.Controller与 View之间的值传递 1.View将从从Controller获得Model中的数据. Model是MVC中 表示业务数据的层. 2.ViewData相当于数据字典,包含Controlle和View之间传递的所有数据.Controller会在该字典中添加新数据项,View从字典中读取数据. 二.使用View数据 1. 创建Model 类,在Model文件夹下新建Employee类 2. 在Controller 中获取Model,在GetView 方法中创建Employe