«Safe» относительна здесь и зависит от страницы конкретных и управления участвуют.
Индивид идентификаторы, которые выглядят как ctXYZ
генерируются автоматически родительским ASP.Net Naming Container, когда контроль не был явно назначен идентификатор - то есть, идентификатор генерируется автоматически, как CT001, ct002 и т.д., убедившись, чтобы не создавать дубликаты.
Окончательный идентификатор клиента, который присваивается атрибуту id в HTML, состоит из объединения всех идентификаторов элемента управления и всех предков с символами подчеркивания; таким образом, стабильность одного идентификатора клиента зависит от нескольких элементов управления.
Сгенерированные идентификаторы клиентов, как правило, гарантируют, что они останутся стабильными только в том случае, если Дерево управления всегда воссоздается таким же образом - это верно во многих случаях, но оно не является абсолютным. Динамическое добавление или удаление элементов управления может легко нарушить это предположение.
ASP.Net 4 (? Или 4,5) введен другой режим ID - в первую очередь «Предсказуемость», увидеть ссылку Нейминг Container - но я не верю, что SharePoint использует эту новую функцию в любом месте; и он определенно не используется для идентификаторов, содержащих ctXYZ
компонентов.
Спасибо за это объяснение - вещи, которые я никогда не знал. – gcarterIT