asp.net-mvc-3 – MVC3 IEnumerable模型找不到正确的编辑器模板
发布时间:2020-12-16 03:27:16 所属栏目:asp.Net 来源:网络整理
导读:我有以下型号: public class Filter{ public string Field { get; set; } public string Operator { get; set; } public string Value { get; set; }} 以下控制器: public class FilterController{ public ActionResult Index() { IListFilter model = new
我有以下型号:
public class Filter { public string Field { get; set; } public string Operator { get; set; } public string Value { get; set; } } 以下控制器: public class FilterController { public ActionResult Index() { IList<Filter> model = new List<Filter>() { new Filter(),new Filter() }; return View(model); } } 以下观点: @model IEnumerable<Filter> @Html.EditorForModel() 这应该查找我的EditorTemplate Filter.cshtml,并为列表中的每个元素呈现模板,对吧? 使用Glimpse,我注意到MVC正在寻找IEnumerable`1.cshtml而不是Filter.cshtml 我使用时会发生同样的事情 @Html.EditorFor(model => model) 当我这样做: @Html.EditorFor(model => model,"Filter") 我得到一个错误,说Filter.cshtml期望一个Filter类型的模型,但它收到了IEnumerable类型的模型< Filter> 我这样做了吗?我是否需要做任何其他事情才能使用正确的编辑器模板正确渲染模型列表? 解决方法
我在过去使用EditorTemplates肯定遇到过问题,但我认为这主要是用户错误.
一种可能的解决方法是将集合封装在单个视图模型类中,并将其传递给视图 public class MySweetFilterViewModel { public IEnumerable<Filter> Filters { get; set; } } 然后,您可以使用单个视图来分离集合 @model Project.Models.MySweetFilterViewModel @Html.EditorFor(x => x.Filters) 只需确保您的控制器封装 public ActionResult Index() { //... return View(new MySweetFilterViewModel() { Filters = model }); } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 在ASP.NET身份中角色与声明的最佳实践
- asp.net-core – 将标识移动到类库ASP.Net Core
- asp.net – .NET身份电子邮件/用户名更改
- asp.net-mvc – 如何使用ASP.NET MVC对网页授权进行单元测试
- Asp.Net Core MVC利用视图组件和JQuery动态加载列表
- asp.net – 如何将网页添加到gridview
- asp.net-mvc – 在Azure上预热经过身份验证的应用服务
- asp.net – 选择框更改事件中的setTimeout
- 在ASP.NET或ASP.NET MVC中生成管理界面
- asp.net-mvc – MVC HTTPS localhost Chrome连接不安全NET
推荐文章
站长推荐
- 如何让ASP.NET AJAX通过GZip压缩发送JSON响应?
- asp.net – NavigateUrl =“#”变成href =“SubF
- ASP.NET MVC 5中的Actionfilter注入
- .Net Core微服务入门全纪录(五)——Ocelot-API
- asp.net-mvc – jwt令牌多租户
- asp.net-mvc – Paypal REST API – 在付款过程中
- asp.net-mvc – 在braintree的localhost上测试We
- asp.net-mvc-3 – 无法加载文件或程序集’Struct
- ASP.NET:文字属性中的单引号和双引号
- asp.net-mvc-3 – ASP.NET MVC 3编辑器模板中的I
热点阅读