如何在 MVC 中创建共享视图
Posted
技术标签:
【中文标题】如何在 MVC 中创建共享视图【英文标题】:How to create shared views in MVC 【发布时间】:2011-01-20 04:03:24 【问题描述】:在我的 Views 文件夹中,我有几个文件夹,例如 Category、Origin、Price...。它们都有一个 Browse.aspx 文件,并且该文件中的代码显示了一个产品表。与这些文件夹关联的所有控制器都使用相同的 ViewModel,但在每个视图中我都有重复的代码。代码是:
文件夹类别,文件browse.aspx 文件夹来源,文件browse.aspx .....
<% foreach ( var p in Model.Products) %>
<li> <%: p.productname + " " + p.price + " " + p.origin.originname + " " + p.category.categoryname %> </li>
<% %>
如何创建共享视图并在所有这些视图中使用共享视图?
【问题讨论】:
【参考方案1】:听起来你可以做两件事:
-
将重复的视图代码拉到局部视图中。
将局部视图放在“共享”视图文件夹中。
然后你可以在你的其他视图中渲染这个局部视图。
希望这会有所帮助。
鲍勃
【讨论】:
【参考方案2】:您可以为视图的 Index 方法设置一个参数(您必须将此控制器合并为一个)
并根据此参数进行切换。然后,每个案例将只请求所需的类型
public ActionResult Index(String a)
switch (a)
case "1": //set your model the way you want it ...
【讨论】:
以上是关于如何在 MVC 中创建共享视图的主要内容,如果未能解决你的问题,请参考以下文章
如何在 SwiftUI 中创建共享导航栏以在多个视图之间进行交互? [关闭]
如何在 ASP.NET CORE Razor Pages 中创建共享表单?
在 ASP.NET MVC 3 中创建基于平台显示不同视图的自定义 ViewResult
如何在现有数据库中创建 ASP.Net Identity 表?