如果我有一个精心制作的重复布局,我只想定义一次,请说出一些花哨的方格框,但这些方框的内容在视图和模型中都会从网格到网格(但不在网格内),例如一页有一个产品摘要的花式网格,另一页有一个类别介绍的花式网格。实现MVC3最明智的模式是什么?在ASP MVC3视图中重复查看
0
A
回答
2
您可以使用显示模板。例如定义上是Enumerable<SomeViewModel>
类型的视图模型属性:
public class MyViewModel
{
public IEnumerable<SomeViewModel> Models { get; set; }
}
,并在视图中使用DisplayFor帮手:
@model MyViewModel
@Html.DisplayFor(x => x.Models)
然后定义将被自动呈现自定义显示模板Models集合的各个元素(~/Views/Shared/DisplayTemplates/SomeViewModel.cshtml
):
@model SomeViewModel
<div>
@Html.DisplayFor(x => x.SomeProperty)
...
</div>
模板化帮助程序按惯例工作。默认情况下,它将首先在~/Views/CurrentController/DisplayTemplates
文件夹中查找,然后在~/Views/Shared/DisplayTemplates
文件夹中查找与收集属性类型(SomeViewModel.cshtml
)命名方式相同的模板。
0
您可以将重复部分移动到部分视图中。然后是局部视图可以在任何地方重用
0
行动GenreMenu在存储控制器:
[ChildActionOnly]
public ActionResult GenreMenu()
{
var genres = storeDB.Genres.ToList();
return PartialView(genres);
}
在查看这将重复局部视图三次:
@for (int i = 0; i < 3; i++)
{
Html.RenderAction("GenreMenu", "Store");
}
相关问题
- 1. Asp MVC3一对多创建并查看
- 2. ASP .NET MVC3剃刀弹出查看
- 3. ASP MVC3 PDF查看器的lib
- 4. 在ASP MVC3中设置'editor-field'值查看
- 5. ASP.NET MVC3在查看
- 6. ASP .NET MVC3如何从局部视图
- 7. 视图在列表视图中查看
- 8. 在MVC3(剃刀)中重复的相同部分视图
- 9. 将重复查看功能包含到多个视图中?
- 10. 在视图中查看(Android)
- 11. iCarousel在视图中查看?
- 12. 控件在ASP视图中重叠
- 13. MVC3我的程序在错误的位置查看视图
- 14. asp.net MVC3查看
- 15. 在MVC3视图
- 16. MVC3 ASP在视图中用空白空间替换空值
- 17. 在ASP .NET中设置视图名称为动作属性MVC3
- 18. ASP MVC 3.0复杂视图
- 19. ASP.NET MVC3 Automapper视图模型/型号查看验证
- 20. 如何在asp net mvc3中将部分视图的值传递给父视图
- 21. ASP MVC无法从导入的MEF模块中查看视图
- 22. Request.IsAuthenticated不工作在IE重复部分视图MVC3
- 23. 在Forge查看器中查看Revit平面图(2D视图)
- 24. 避免在android gridview中重复查看
- 25. 在Pandas中查看重复的行
- 26. 查看重叠的另一个视图
- 27. 在视图中查看查看器在上一个和下一个视图之间的重叠
- 28. 在视图内查看
- 29. 如何查看父视图模型MVC3 C#?
- 30. ASP MVC3通过附加参数与“返回查看(模型)”
对不起,如果我做@Html .DisplayFor(x => x.Models),那么定义我的网格布局的循环在哪里适合? – stovroz
无处。它是自动为您做的并为每个项目呈现显示模板的框架。你不需要编写任何循环。 ASP.NET MVC自动识别模型实现'IEnumerable',因此它会循环。它按照惯例工作。一切都是以配置为基础的。 –
但网格的html在哪里生活? – stovroz