有时需要在ASP.NET MVC4的视图的@model中使用多个类型的实例,.NET Framework 4.0版本引入的System.Tuple类可以轻松满足这个需求。

假设Person和Product是两个类型,如下是控制器代码。

[csharp] view plain copy
  1. using System;
  2. using System.Web.Mvc;
  3. namespace Razor.Controllers
  4. {
  5. public class HomeController : Controller
  6. {
  7. Razor.Models.Product myProduct = new Models.Product { ProductID = 1, Name = "Book"};
  8. Razor.Models.Person myPerson = new Models.Person { PersonID = "1", Name = "Jack" };
  9. public ActionResult Index()
  10. {
  11. return View(Tuple.Create(myProduct,myPerson));  // 返回一个Tuple对象,Item1代表Product、Item2代表Person
  12. }
  13. }
  14. }

如下是视图Index.cshtml的代码

[html] view plain copy
  1. @model Tuple<Razor.Models.Product, Razor.Models.Person>
  2. @{
  3. Layout = null;
  4. }
  5. <!DOCTYPE html>
  6. <html>
  7. <head>
  8. <meta name="viewport" content="width=device-width" />
  9. <title>Index</title>
  10. </head>
  11. <body>
  12. <div>
  13. @Model.Item1.Name
  14. </div>
  15. </body>
  16. </html>

当然,还有许多其它的方法做到上述相同效果。但上述方法直接简明,容易理解和使用。

ASP.NET MVC4中@model使用多个类型实例的方法相关推荐

  1. [转]ASP.NET MVC4中@model使用多个类型实例的方法

    本文转自:http://blog.csdn.net/hulihui/article/details/48199897 有时需要在ASP.NET MVC4的视图的@model中使用多个类型的实例,.NE ...

  2. mvc4 html.dropdownlist,ASP.NET MVC4中使用Html.DropDownListFor的方法示例

    本文实例讲述了ASP.NET MVC4中使用Html.DropDownListFor的方法.分享给大家供大家参考,具体如下: 一.控制器部分: public ActionResult PageDeta ...

  3. mvc html.dropdownlist,ASP.NET MVC4中使用Html.DropDownListFor的方法示例

    本文实例讲述了ASP.NET MVC4中使用Html.DropDownListFor的方法.分享给大家供大家参考,具体如下: 一.控制器部分: public ActionResult PageDeta ...

  4. ASP.NET MVC4中调用WEB API的四个方法

    当今的软件开发中,设计软件的服务并将其通过网络对外发布,让各种客户端去使用服务已经是十分普遍的做法.就.NET而言,目前提供了Remoting,WebService和WCF服务,这都能开发出功能十分强 ...

  5. 使用asp.net MVC4中的Bundle遇到的问题及解决办法

    背景 之前有过使用MVC3的经验,也建过MVC4的基本样例看过,知道有bundle这么一个方法. 近日想建个网站使用MVC4,但是我觉得在基本样例上改不好,有太多无用的东西,所以就建了一个空白的MVC ...

  6. ASP.NET MVC4 传递Model到View

    原文发表在:http://www.star110.com/Note/ReadArticle/60641215331146140043.html 开发环境:.NET MVC4 + EF6.0 模型: 1 ...

  7. ASP.NET MVC4中的异步控制器

    在抛弃了对.NET 3的支持之后, ASP.NET MVC 4 彻底拥抱了Task类库, 你不需要再蛋疼的给每个Action写两个方法, 也无需傻傻的手动对异步Action计数器增减了(AsyncMa ...

  8. ASP.NET MVC4中用 BundleCollection

    来源:http://www.cnblogs.com/madyina/p/3702314.html ASP.NET MVC4中对JS和CSS的引用又做了一次变化,在MVC3中我们这样引用资源文件: &l ...

  9. [转载]在ASP.NET MVC中,使用Bundle来打包压缩js和css

    在ASP.NET MVC4中(在WebForm中应该也有),有一个叫做Bundle的东西,它用来将js和css进行压缩(多个文件可以打包成一个文件),并且可以区分调试和非调试,在调试时不进行压缩,以原 ...

最新文章

  1. Galaxy nexus i9250 android 4.2 一键root
  2. 烂泥:mysql修改本地主机连接
  3. Kettle日常使用汇总整理
  4. whoosh----索引|搜索文本类库
  5. 【硬件】集线器,交换机,路由器
  6. 初识ABP vNext(8):ABP特征管理
  7. 程序员过关斩将--Http请求中如何保持状态?
  8. STL源码剖析 入门开始 STL概论与版本简介
  9. Google Maps API V3: 通过邮编获取经纬度 Get Location (Latitude and Longitude) from Zip Cod
  10. 【研究方向是SDN该怎么做?】软件定义网络(SDN)的安全挑战和机遇
  11. windows下编译c语言文件路径,解决JNI在Windows环境下因长路径导致编译失败问题
  12. 计算机操作系统之设备管理
  13. Webdriver for python 入门示例2(浏览器句柄操作)
  14. 批处理文件中获取当前所在路径的几种方法
  15. 模板引擎thymeleaf和freemarker
  16. 利用VB操作目录和文件夹
  17. 实操!!!论坛项目开发流程(java)
  18. oracle lob类型和mysql text_OracleLob类型存储浅析
  19. python制作股票图表-专题:Python matplotlib 绘制股票走势图
  20. Linux 文字雨特效

热门文章

  1. mfschunkserver安装脚本
  2. 总结-软件工程师 ( 编程能力 )
  3. git push 不再需要重复输入账户密码的技巧
  4. 在不同域中各个系统拥有自已独立的用户系统时的单点登录问题
  5. 如何有效地提升 JavaScript 水平?
  6. [第11天]mySQL简单介绍
  7. 红帽集群套件RHCS四部曲(概念篇)
  8. 2.选择元素 - 自定义过滤器《jquery实战》
  9. 面对对象的程序设计初探总结
  10. Java中的Cookie(1)——基本操作