Не знаю является ли это ошибкой или это просто удобство, но скажу своё слово. :-)
Очень часто наблюдаю, что начинающие разработчики при создании новых списков и при наделении их полями при именовании сначала сразу же используют русскоязычные названия.
Чтобы была понятна проблема, объясню. Любое поле и список имеет 2 название: внутренние (InternalName) и отображаемое (DisplayName). Когда мы создаем поле или список с русскоязычным названием, то происходит следующее:
Я придерживаюсь следующего правила:
Очень часто наблюдаю, что начинающие разработчики при создании новых списков и при наделении их полями при именовании сначала сразу же используют русскоязычные названия.
Чтобы была понятна проблема, объясню. Любое поле и список имеет 2 название: внутренние (InternalName) и отображаемое (DisplayName). Когда мы создаем поле или список с русскоязычным названием, то происходит следующее:
- Список
- InternalName - присваивается: для обычных списков ListN или для библиотек DocLibN - где N - нумератор списка. Узнается при анализе адресной строки адреса списка.
- DisplayName - то что ввели
- Поле
- InternalName - перекодированное название, что-то наподобие _x041f__x0440__x0438__x0432__x04. Это название можно узнать при анализе адреса, который высвечивается в момент редактирования свойства поля. Там должен быть параметр Field=%5Fx041f%5F%5Fx0440%5F%5Fx0438%5F%5Fx0432%5F%5Fx04. Есть небольшая разница: %5F надо заменить на _ (подчеркивание).
- DisplayName - то что ввели
Я придерживаюсь следующего правила:
- При создании списка/поля вначале называю его по-английски и желательно без пробела (пробел превращается в %20, что тоже на мой взгляд некрасиво). Создается объект с InternalName и DisplayName какой мы задали.
- Переименовываю объект. InternalName остается какой был. А DisplayName стал более дружественным.
Комментариев нет:
Отправить комментарий