ASP.NET INamingContainer – 可选前缀

ASP.NET是否始终将“ ct100 $ … ”前缀应用于元素ID,或者在某些情况下,如果元素无论如何都保证唯一,它会对此进行优化。

最近我看到应用的ID前缀不同的构建,一个具有前缀而一个不是,但两者都来自相同的源。

任何人都可以提供更多细节,以及INamingContainers和ID生成的工作方式吗?

新的ASP.NET 4 ClientIDMode属性会影响呈现的客户端ID。 将命名容器控件设置为Predictive意味着减少这个…静态获取确切的ID并呈现给客户端,您必须小心确保唯一性。

当您使用命名容器(母版页也是命名容器)时,它会附加这个较长的ID以确保唯一性; 在.NET 4中,他们更多地考虑了这一点,并增加了Predictive和Static等function,以减少ID的长度。

HTH。