【问题标题】:Reduce name length in ASP.Net Web Forms减少 ASP.Net Web 窗体中的名称长度
【发布时间】:2013-03-24 01:11:57
【问题描述】:

我现在正在尝试减小 ASP.Net 页面大小。我已成功减少 ID 的长度,但 ASP.Net 控件的经典名称存在问题。

例如, <input type="hidden" name="ctl00$mainContentPlaceHolder$repeaterListView$ctl03$ProductListSearchPanel1$hiddenfieldProductId" id="hiddenfieldProductId" value="24052" />

我可以使用哪些功能或方法来减少 ASP.Net 中的名称长度?

【问题讨论】:

  • 为什么需要这样做?
  • 您能解释一下您遇到的问题吗?我猜这不仅仅是名字太长。您是否有 ViewState 太大的问题,因为有办法增加回发大小等,而不是沿着这条路线走。
  • 我的页面上有很多产品,我需要它们被谷歌索引(100kb 限制)。所以减少控件名称会很有用。
  • 哇,好的,所以你的问题真的应该完全不同! “如何优化包含大量产品的 ASP .NET 网站,以便 Google 可以对其进行索引”或类似的内容?然后你可以添加“我已经尝试减少控件的名称......” - 人们可能会给你很多想法,比如不要沿着你走的路走!您可能需要一个索引或其他机制,而不是查看您的所有控件。只是一个想法。

标签: c# asp.net html webforms


【解决方案1】:

设置服务器控件的ClientIdMode属性通常会使id更具可读性和一致性。 (ClientIDMode="Static")

【讨论】:

  • 我认为你需要小心这种方法。如果您有两个用户控件(UserA 和 UserB)并且都有一个名为(ID)“OK”的按钮,那么我认为您将有两个具有相同 ID 的控件,这可能会导致问题?您可以使用 Page + ID 命名每个项目,但随后您开始重新调整大小,根据我的评论,OP 实际上试图实现什么?
  • @Acro - 是的,我说“命名”是为了便于理解我的意思,但将 ID 放在括号中以澄清,可能是一个错误。话虽如此,ID 将是重复的,这可能会导致各种问题。如果它们都具有相同的 ID,您如何知道哪个 ID 与哪个控件实际对应?根据我对您原始问题的问题,您实际上想达到什么目标?您是否收到 ViewState 错误?没有人会真正关心你的控件在引擎盖下的名称,所以你尝试这样做一定是有原因的?
猜你喜欢
  • 1970-01-01
  • 2015-05-19
  • 2014-12-31
  • 1970-01-01
  • 2012-01-23
  • 2012-08-06
  • 2017-02-09
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多