0

有没有人尝试过为 ClientID 使用 GUID。我问的原因是因为我有一个非常 UI 丰富的应用程序,并且来回发送的 HTML 越来越大。该 HTML 的很大一部分是基于父级连接构建的控件 ID。例如:Container_Tab_FirstTab_Control。

一种可能的解决方案是将 GUID 生成为 ClientID。这样,ClientID 最多为 32 个字符。

有没有人尝试过这样的事情?

我在.NET 4.0

4

3 回答 3

2

您可以使用ClientIDMode枚举并指定static. 但随后您将不得不管理每个控件的 ClientID 的唯一性。

使用 GUID 并不是一个好主意,因为在客户端代码中很难访问它们。您将需要维护 GUID 与其对应的控件之间的映射。

但是您真的应该考虑拥有一个冗长的客户端 ID 是否真的对您的页面性能非常不利。您应该找到一种方法来限制要在页面上显示的控件/数据的数量,而不是担心客户端 ID,而是实现分页之类的东西。

于 2014-04-02T16:09:32.770 回答
1

如果您的页面上有太多控件,那么可能是时候重新考虑您的架构,而不是从较短的 ID 中获得一点点更好的性能。

分页您的数据(通过 AJAX 加载)。您还可以通过 Ajax 加载页面的整个部分并构建动态网页。

于 2014-04-02T16:23:40.390 回答
0

这通常是一个坏主意。

但是如果你有兴趣,你可以将ClientIDMode属性设置为Static,这不会改变 id。

id 将保持不变。

于 2014-04-02T16:09:29.000 回答