可以让部分视图继承多个模型吗?我有三个模型(联系人,客户,供应商),都有地址信息(地址)。为了实现DRY,我将地址信息拖入自己的模型地址中。我创建了地址的部分创建/更新视图,以及在其他三个模型的其他创建/更新视图中呈现的内容。ASP.NET MVC通用部分
0
A
回答
2
而不是使用复合视图模型,您仍然可以干,并有三个视图(联系人,客户端,供应商)。如果您担心在显示地址信息时重复自己,请为该类型制作显示模板。这样,你可以写出所有为每个联系人,客户和供应商的具体信息,在他们自己的看法,只是在下降:
<%= Html.DisplayFor(m => m.Address) %>
您现在正干,同时还支持单一职责原则。
有关显示和编辑模板的更多信息,您可以查看Brad Wilson或Phil Haack的帖子。
0
0
我认为要做到这一点的唯一方法是使用复合视图模式(这不一定是坏事),所以像:
public class MyControllerActionViewModel
{
public IList<Contact> Contacts { get; set; }
public IList<Client> Clients { get; set; }
public IList<Vendor> Vendors { get; set; }
}
我们使用这种方法很多,以获得更多的元素进入在需要时查看视图,并且我发现在需要时使用这些自定义视图模型没有不好的做法。
希望有帮助!
相关问题
- 1. 通部分查看问题Asp.Net MVC
- 2. ASP.NET MVC子部分
- 3. ASP.Net MVC部分视图
- 4. 部分验证ASP.NET MVC
- 5. ASP.NET MVC的新闻部分
- 6. 部分验证 - ASP.NET MVC 2
- 7. ASP.NET MVC 2:更新部分?
- 8. ASP.NET MVC部分控件
- 9. ASP.NET MVC通用局部视图模式
- 10. Asp.net MVC WebGrid在部分视图中不通过Ajax更新
- 11. asp.net mvc部署
- 12. asp.net mvc部署
- 13. ASP.NET MVC - 通过外部模型
- 14. ASP.NET MVC解析URL查询部分
- 15. 部分视图控制器ASP.NET MVC
- 16. ASP.NET MVC 3部分视图未找到
- 17. ASP.NET MVC 3部分视图模板
- 18. ASP.NET MVC,部分视图和数据
- 19. ASP.NET MVC - 从部分或身体
- 20. ASP.NET MVC C#Web部分丢失
- 21. ASP.NET MVC Ajax分页与局部视图
- 22. ASP.NET MVC。部分视图的具体URL
- 23. Asp.net MVC。在EditorTemplate或@ Html.Action重名/部分
- 24. ASP.NET MVC 4 - 部分视图和Ajax.Actionlink
- 25. ASP.NET MVC - 部分视图不刷新
- 26. ASP.NET MVC 3模型的部分验证
- 27. asp.net中的部分视图mvc
- 28. asp.net MVC句柄部分回传响应
- 29. ASP.NET MVC - 更新多个部分/视图
- 30. 在asp.net MVC缓存部分景色
是不是'Html.DisplayFor()'ASP.NET MVC 2功能? – Nate 2010-05-14 15:56:50
@Nate Bross是的。 – 2010-05-14 16:00:28
很好的答案和链接。一定会读它! – gnome 2010-05-14 16:40:54