asp.net-mvc – 如何在ASP.NET MVC部分视图中使用匿名列表作为模型?
发布时间:2020-11-14 08:32:04 所属栏目:asp.Net 来源:互联网
导读:我有一个Contact对象的列表,我只想要一个属性的子集.所以我使用LINQ投影来创建一个匿名列表,并将其传递给局部视图.但是当我在部分视图中使用该列表时,编译器表示它没有这些属性.我尝试了最简单的情况如下,但我仍然没有机会在部分视图中使用匿名对象或列表. va
我有一个Contact对象的列表,我只想要一个属性的子集.所以我使用LINQ投影来创建一个匿名列表,并将其传递给局部视图.但是当我在部分视图中使用该列表时,编译器表示它没有这些属性.我尝试了最简单的情况如下,但我仍然没有机会在部分视图中使用匿名对象或列表. var model = new { FirstName = "Saeed",LastName = "Neamati" }; return PartialView(model); 在局部看来,我有: <h1>Your name is @Model.FirstName @Model.LastName<h1> 但是它表示@Model没有FirstName和LastName属性.这里有什么问题?当我使用@Model,这个字符串将在浏览器中呈现: { Title = "Saeed" } 解决方法不要这样做不要将匿名对象传递给您的视图.它们的属性是内部的,在其他程序集中不可见.视图由ASP.NET运行时动态编译为单独的动态程序集.因此,定义视图模型并强烈地输入您的视图.喜欢这个:public class PersonViewModel { public string FirstName { get; set; } public string LastName { get; set; } } 接着: var model = new PersonViewModel { FirstName = "Saeed",LastName = "Neamati" }; return PartialView(model); 在你看来: @model PersonViewModel <h1>Your name is @Model.FirstName @Model.LastName<h1> (编辑:岳阳站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 如何将Model字段值传递给javascript变量?
- asp.net – 请求URL在IIS 7中无效
- asp.net-mvc – 如何组合两个dataTextFields的SelectList描
- asp.net – 如何扩展aspnet成员身份验证表?
- ASP.NET MVC4 Razor模板简易分页效果
- asp.net mvc – 如何实现面包屑助手在asp.net mvc?
- asp.net中使用repeater和PageDataSource搭配实现分页代码
- asp.net-mvc – 使用NLog记录未处理的异常? ELMAH和NLog应
- remoting和webservice有什么区别
- asp.net-mvc – ASP.NET MVC应用程序的WatiN最佳实践/经验法