Asp.net 删除ID'的原因;页上的控件中的

Asp.net 删除ID'的原因;页上的控件中的,asp.net,.net,performance,controls,Asp.net,.net,Performance,Controls,可以从.NET中重新排序的页面中删除ID。这可以通过简单地将属性为runat=“server”的元素的ID标记设置为null来实现。显然,对于必须在回发场景中评估/使用的控件,不应该这样做。我很好奇,知道可以这么做的人会广泛使用删除ID。我知道,通过删除ID值,您可以节省一些带宽,但开始使用此方法的原因应该是什么?如果您真正关心性能,我可能不会太担心.NET控件ID的冗长性(这是我非常讨厌的),而是更担心整个回发模型 整个系统将状态发送到客户端,以便它可以将其包发布到服务器,这在延迟和带宽方面都

可以从.NET中重新排序的页面中删除ID。这可以通过简单地将属性为runat=“server”的元素的ID标记设置为null来实现。显然,对于必须在回发场景中评估/使用的控件,不应该这样做。我很好奇,知道可以这么做的人会广泛使用删除ID。我知道,通过删除ID值,您可以节省一些带宽,但开始使用此方法的原因应该是什么?

如果您真正关心性能,我可能不会太担心.NET控件ID的冗长性(这是我非常讨厌的),而是更担心整个回发模型

整个系统将状态发送到客户端,以便它可以将其包发布到服务器,这在延迟和带宽方面都是非常低效的


如果它是一个新项目,可能值得使用MVC,或者如果它是现有的,请尝试在IIS中打开页面压缩。

我会从另一个方面看到问题:如果以后不需要重新使用它,为什么要在服务器上设置一个运行的控件?我看到很多人对页面上的每个文本都使用
asp:label
。。。即使是静态文本。大多数情况下,一个简单的
span
标记就足够了,或者一个
block@Steve,我认为使用
asp:Label
的主要原因是用户代理将内容呈现为不同的标记。但是,只要您只希望使用PC浏览器,那么可能
span
\
literal
\
方法就可以了。安迪,我完全同意您的看法!再加上Ajax.Net和臭名昭著的“部分回发”,ScriptManager和UpdatePanel会为每篇文章增加一些额外的KB,人们似乎对这一点掉以轻心,甚至有使用这种技术的互联网页面。如果我正在创建一个全新的项目,我肯定会按照你的建议使用MVC。