zoukankan      html  css  js  c++  java
  • ASP.NET MVC4中@model使用多个类型实例的方法

    http://blog.csdn.net/hulihui/article/details/48199897

       有时需要在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.   
    4. namespace Razor.Controllers  
    5. {  
    6.     public class HomeController : Controller  
    7.     {  
    8.         Razor.Models.Product myProduct = new Models.Product { ProductID = 1, Name = "Book"};  
    9.         Razor.Models.Person myPerson = new Models.Person { PersonID = "1", Name = "Jack" };  
    10.           
    11.         public ActionResult Index()  
    12.         {  
    13.             return View(Tuple.Create(myProduct,myPerson));  // 返回一个Tuple对象,Item1代表Product、Item2代表Person  
    14.         }  
    15.   
    16.     }  
    17. }  

            如下是视图Index.cshtml的代码

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

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

  • 相关阅读:
    [匈牙利算法] 洛谷 P1640 连续攻击
    [dfs] Jzoj P5916 flow
    [bfs] Jzoj P3522 迷宫花园
    [二分][状压dp] Jzoj P3521 道路覆盖
    [模拟] Jzoj P3520 原根
    [并查集] Jzoj P5914 盟主的忧虑
    [树上差分][子树求和][树形dp] Jzoj P5911 Travel
    [思维][暴力] Jzoj P5912 VanUSee
    [dfs][离散化] Jzoj P5910 DuLiu
    [cdq分治][树的重心] 洛谷 P3806 点分治1
  • 原文地址:https://www.cnblogs.com/wangluochong/p/7410063.html
Copyright © 2011-2022 走看看