-
模仿模型:
-
概念上讲,在ASP.NET时代WebForm中的ascx【用户的自定义控件】,到了后来的MVC框架,提供了【partial view分部视力】,到现在MVC Core中的【ViewComponent视力组件】
- 使用场景:导航菜单、标签云、登陆面板、购物车、最近发表的文章
-
MVC中载入分部视力的2种方法及缺点:
-
Html.action():会通过HtmlHelper对IIS再进行一次处理要求,通过Server.Execute方法,因此,使用它会重新执行一遍controller的生命周期(会生产性能问题,因为partial view只提供视图的重用,业务数据还是依赖于action提供)
-
Html.partial():会通过HtmlHelper直接读取*.cshtml文件,直接执行该检视并取得结果。
-
- ViewComponent优势:
- ViewComponent独立于其所在的View页面和Action,更不会跟当前的Controller有任何的瓜葛(不能独立使用的,必须在一个页面内被调用)
- 保证了控制器和视图分离,对测试友好。
- ViewComponent组成:
- 类(通常派生自ViewComponent)
- 返回结果(通常为视图). 像控制器
- 页面中应用:我们把调用语句放在_Layout.cshtml页面中@await Component.InvokeAsync("Poco")
-
- 相关文章: