gpt4 book ai didi

asp.net-mvc - ASP.NET MVC : Use Html.部分还是Html.Action?

转载 作者:行者123 更新时间:2023-12-04 03:30:09 25 4
gpt4 key购买 nike

我有一个在布局中定义了导航栏的站点。导航栏用于网站的多个 View 中,并具有一些动态内容,这些内容是通过数据库中的几个查询生成的。

我想知道呈现此菜单(在局部 View 中定义)的最佳实践是什么。

据我所知,我可以通过两种方式做到这一点,每种方式都有其优点和缺点:

使用Html.Action:
+与使用布局的 View 完全独立
-它添加了一个额外的请求来呈现页面的一部分
-我添加了一个Action方法,该方法返回未从Ajax调用的Partial View 。

使用Html.Partial:
+一个简单的请求即可呈现整个 View
-每个 View 模型必须包含导航栏所需的信息

我真的很感谢您对此的见解,因为我的网站上有几种类似的情况,但我不确定哪一种是最好的。

谢谢!

最佳答案

我将使用Html.Action,尤其是如果此菜单包含一些从数据库中获取的动态数据时。这样做的好处是,您可以通过与主操作完全不同的操作完全分离此访存。另外,可以通过使用[OutputCache]属性装饰子 Action 来缓存子 Action 的输出。这样,如果数据不经常更改,则可以减少数据库的负载。

It adds an extra request to render a section of the page



您必须对此有误解。客户端没有其他请求。一切都在一个请求中提供。还有其他的 Controller 实例化和操作执行,但没有来自客户端的新HTTP请求。就像在同一个请求中执行了2个 Controller Action 并将它们的结果汇总到发送给客户端的单个HTML页面中一样。

关于asp.net-mvc - ASP.NET MVC : Use Html.部分还是Html.Action?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8485306/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com