您的位置:首页 > 编程学习 > ASP.NET > 正文

将匿名对象作为Model数据传给View

更多 时间:2014-12-27 类别:编程学习 浏览量:408

将匿名对象作为Model数据传给View

将匿名对象作为Model数据传给View

匿名类型默认访问修饰符为internal,这意味着他们只可以从其定义的程序集中被访问。一旦你超越了程序集的边界,将会被当做普通的object对象被解析,因此不具备直接索引属性。

将匿名对象作为Model数据传给View方法

 

一、使用Tuple元组静态类

1、Controller中

var result= dbDataContext.TableName.Select(s=>Tuple.Create(参数赋值));

2、View中使用:

  •  
  • C# 代码   复制
  • 
    @model IEnumerable<dynamic>
    
                foreach (var item in Model)
                {
                <tr>
                    <td>@item.Item1</td>
                    <td>@item.Item2</td>
                    <td>@item.Item3</td>
                    <td>@item.Item4</td>
                    <td>@item.Item5</td>
                </tr> 
                }
    
    		

  • 二、使用ExpandoObject类

    这是.NET 4.0中的一种类型:ExpandoObject,ExpandoObject类型是一种可以再运行时随意动态添加和删除成员的类型。

    1、Controller中:

  •  
  • C# 代码   复制
  • 
    public ActionResult UsingExpando()  
    {  
        dynamic viewModel = new ExpandoObject();  
        viewModel.TestString = "This is a test string";  
       
        return View(viewModel);  
    }  
    
    		
  • 2、View中使用:

    <p> @Model.TestString </p>

     

    标签:mvc