用户控件在asp.net和Performance中

asp.net中的UserControls是否会降低性能.

MasterPage有自己的生命周期
Page有自己的生命周期和
UserControls有自己的生命周期.

UserControls有助于划分工作负载并且易于维护,但UserControls会降低asp.net应用程序的等级性能吗?

解决方法

我从未见过它们会降低性能,除非你做了一些愚蠢的事情,比如让每个用户控件负责它自己的数据库查找,然后将它们绑在Repeater或类似的东西中.如果你使用常识,它们不应该明显降低性能.

但是,如果您正在讨论优化到处理器周期,我猜他们不会因为一切都被编译成MSIL,然后编译到机器代码,所以我猜测编译器可以将其排序并将其处理用户控件与您直接在页面上拥有所有组成控件没有什么不同.
编辑 – 添加

This article争论他们如何才能真正提高绩效.有趣.

In addition to their reusability and
flexibility,Web user controls can
take advantage of the ASP.NET caching
engine to implement what is referred
to as “fragment caching.” Essentially,
fragment caching allows a Web
developer to control the HTML caching
of individual controls on a page,
including setting the duration and
caching varIoUs versions of the
control based on query string,control
properties,browser type,and even
custom strings. The ability to cache
only portions of pages is powerful
since a portion of a page will often
access relatively static data stored
in a relational database or accessed
through an XML Web service,while
other portions of the same page
manipulate dynamic data. For these
static portions,creating a Web user
control and setting caching options
greatly reduces the number of database
round trips,thereby increasing
performance. In most instances,using
ASP.NET caching judicIoUsly is the
single biggest performance improvement
that can be made.

好问题.我再一次学到了新东西.谢谢.

相关文章

项目要求通过网站上传大文件,比如视频文件,通过摸索实现了文件分片来上传,然后后台进行合并。 使用了...
安装新版本的Nginx(vim /etc/yum.repos.d/nginx.repo) [nginx-stable] name=nginx stable repo baseu...
什么是 SignalR ASP.NET Core ASP.NET Core SignalR 是一种开放源代码库,可简化将实时 web 功...
在Windows下使用Docker,我们选择Docker Desktop这个软件,非常方便。 ## Docker Desktop介绍及安装 Do...
项目开始设计的是运行在windows下,所以一开始采用的是windows服务模式来获取多媒体文件信息,后来要求...
银河麒麟高级服务器操作系统V10是针对企业级关键业务,适应虚拟化、云计算、大数据、工业互联网时代对主...