在ASP.NET MVC中什么时候应该使用局部视图?

7

我已经看了一遍asp.net mvc的nerd dinner应用程序示例...但是仍然不明白何时何地应该使用部分视图?

  • 它是否类似于webforms中的用户控件?

注意: 看到部分视图实际运行会很有帮助...有没有示例...


可能是为什么使用ASP.NET MVC部分视图(.ascx)的重复问题。 - Thor
访问 https://devbloggies.blogspot.com/2019/07/basics-of-layout-view-and-partial-view-in-mvc.html 以获取最简单的解释。 - user632299
4个回答

13

在以下两种情况下,您应该使用部分视图:

  1. 当您需要在网站的多个位置重复使用类似的“组件组”时(例如,“登录表单”可能在网站的不同位置使用)。

  2. 当您有大量渲染逻辑用于生成页面的特定部分,并希望将其隔离,以使页面更加清洁/易于编辑。这就像将代码功能放入自己的方法或类中一样。一个很好的例子是导航栏,您希望在一个地方拥有呈现导航栏的逻辑,即使只有您的Site.Master调用它。


7

任何您需要使用多次的内容。例如,在此页面上,您可以看到相关帖子的列表。这是在多个页面上的,所以为什么要多次创建它。您可以向部分视图传递数据以根据特定条件自定义它。

我不喜欢用于某些事情,比如登录,我更愿意将用户带到登录页面。然而,这种情况经常被使用。


有什么是会被多次使用的吗?页眉和页脚就是你可能会多次使用的东西,大多数人都会将它们放在主页面布局中,而不是部分视图中。 - Rudey
你的意思是什么?我认为主/布局页面有点不言自明,旨在防止重复使用,就像主/布局页面一样。 - Dustin Laine

1

当您需要在多个视图上显示相似信息时,应使用部分视图。

一个简单的示例是显示订单列表的部分视图。在账户摘要页面上,您可以使用该部分视图显示最近的订单。在订单列表页面上,您可以使用同一部分视图来显示所有已下订单。


0
请注意,Mvc 2的部分视图不像EditTemplates那样在部分视图之间保持绑定状态。这在某些情况下可能很有用,但在其他情况下可能会令人沮丧。如果您需要像模板一样构建绑定状态,请查看MvcContrib的视图类型。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接