Соглашение об именовании идентификаторов в ASP.NET? - PullRequest
5 голосов
/ 13 июля 2010

Исходя из мира HTML, XML и PHP, это новый способ мышления при создании веб-приложений с использованием ASP.NET.Я хотел бы использовать следующий код в моей MasterPage:

<div id="leftnav">
    <asp:ContentPlaceHolder ID="leftnav" runat="server">
    </asp:ContentPlaceHolder>
</div>

Но так как leftnav в этом примере используется дважды, Visual Studio делает небольшой, но заметный протест.Как мне следует думать в этой ситуации, и как лучше всего использовать ID именования в ASP.NET.

Мне не нравится присвоение имен по умолчанию, поскольку id="ContentPlaceHolder1" ничего не говорит о контенте.

Спасибо за внимание!

Ответы [ 6 ]

8 голосов
/ 13 июля 2010

Я бы назвал div "nav", а заполнитель - navPlaceholder.Это связано с тем, что слово «left» подразумевает позицию , которая должна обрабатываться исключительно вашим css , а не вашим html.Что, если дизайнеры решили, что они хотят поставить навигацию справа?Вы можете сделать это в своем CSS, но в итоге вы получите что-то запутанное, например div #lefnav { float:right; } - тривиальный пример, я знаю, но кое-что, что нужно иметь в виду.

3 голосов
/ 13 июля 2010

Как насчет "leftNavPlaceHolder"?

Так же, как вы согласны с вашим соглашением об именах:)

2 голосов
/ 13 июля 2010

Нет, идентификаторы по умолчанию ужасны. Я не могу себе представить, что они предназначены для использования, просто Visual Studio недостаточно умна, чтобы предлагать что-то лучшее, и они не предлагают что-то полуинтеллектуальное, потому что они не хотят пытаться оторваться как-то они не такие. Разумно =)

Так что привычка всегда менять идентификаторы по умолчанию. То, на что вы их измените, полностью зависит от вас; "LeftNavContent"? Практически единственное, что ограничено соглашением, это использование заглавных букв, когда дело доходит до идентификаторов.

Единственное, что должно действительно изменить с чистого HTML, - это то, что вы не можете использовать идентификаторы, такие как "левая навигация", то есть содержащие дефисы, для серверных элементов управления.

1 голос
/ 13 июля 2010

Я ставлю перед всеми элементами управления ASP.Net ux для обозначения пользовательского элемента управления.

Тогда вы можете подключить ваш String emailAddress = "test@abc.com"; к вашему uxEmailAddress.Text = emailAddress

1 голос
/ 13 июля 2010

Субъективная.Очевидный ответ на этот тип вопроса: выберите то, что вам нравится;стандартизировать его и всегда следовать ему.

Лично я называю свои вещи следующим образом:

<asp:Literal runat="server" ID="ltlDescriptionOfContent" />

или

<asp:PlaceHolder runat="server" ID="plhSendMessage">
</asp:PlaceHolder>

Для области, содержащейда, информация об отправке сообщения.Но ты не обязан это делать.Делай что хочешь.Просто сделайте это последовательным.И в идеале, передать немного информации о том, что внутри.

1 голос
/ 13 июля 2010

Я бы посоветовал не указывать идентификатор для div, если он вам действительно не нужен, потому что это повлияет на производительность.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...