如何在 MVC 中创建共享视图

发布于 2024-10-12 14:42:44 字数 449 浏览 3 评论 0原文

在我的 Views 文件夹中,有几个文件夹,例如 Category、Origin、Price……它们都有一个 Browse.aspx 文件,该文件中的代码显示产品表。与这些文件夹关联的所有控制器都使用相同的 ViewModel,但在每个视图中我都有重复的代码。代码是:

文件夹类别,文件browse.aspx 文件夹来源,文件 browser.aspx .....

<% foreach ( var p in Model.Products) { %>
    <li> <%: p.productname + " " + p.price + " " + p.origin.originname + " " + p.category.categoryname %> </li>
<% } %>

如何创建共享视图并在所有这些视图中使用共享视图?

In my Views folder I have a several folders such as Category, Origin, Price,.... They all have a Browse.aspx file and the code in this file displays a table of products. All controllers associated with these folders use the same ViewModel, but in each view I have a repetitive code. The code is:

Folder Category, file browse.aspx
Folder Origin, file browse.aspx
.....

<% foreach ( var p in Model.Products) { %>
    <li> <%: p.productname + " " + p.price + " " + p.origin.originname + " " + p.category.categoryname %> </li>
<% } %>

How can I create a shared view and use the shared view in all these views?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

兮子 2024-10-19 14:42:44

听起来您可以做两件事:

  1. 将重复的视图代码拉入部分视图。
  2. 将局部视图放入“共享”视图文件夹中。

然后您可以在其他视图中渲染此部分视图。

希望这有帮助。

鲍勃

Sounds like ther ar two things you can do:

  1. Pull the repetitive view code into a partial view.
  2. Put the partial view in the 'Shared' view folder.

Then you can render this partial view in your other views.

Hope this helps.

Bob

两仪 2024-10-19 14:42:44

您可以为视图的 Index 方法设置一个参数(您必须将此控制器合并为一个)

,然后根据此参数进行切换。然后,每个案例只会请求所需的类型

public ActionResult Index(String a)
    switch (a)
       {
           case "1":  //set your model the way you want it ...
       }

You can set a parameter to the Index method of your view (You'd have to merge this controllers into only one)

and according to this parameter you make a switch. Each case would then request only the type wanted

public ActionResult Index(String a)
    switch (a)
       {
           case "1":  //set your model the way you want it ...
       }
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文