Могу ли я разместить комментарий внутри тега в ASP.NET? - PullRequest
5 голосов
/ 10 марта 2010

Я хочу отобразить это на моей .aspx странице без использования специальных символьных XML-тегов. Может ли это быть достигнуто?

<asp:ServerTag Property1="a"
    Property2="b"
    Property3="c" <%-- Comment why this particular property is necessary --%>
    Property4="d" /> 

Однако меня приветствует сообщение об ошибке Server tags cannot contain <% ... %> constructs. Если я использую HTML-тег <! - ->, мне говорят, что серверный тег сформирован неправильно.

Есть ли другой синтаксис, чтобы сделать это возможным?

Ответы [ 3 ]

11 голосов
/ 10 марта 2010

Поставьте комментарий на стороне сервера над вашим элементом управления на стороне сервера .

  • <!-- комментарий на стороне клиента (html) - отображается в источнике html, но не отображается на странице
  • <%-- комментарий на стороне сервера - удален на сервере, никогда не видит свет, браузер никогда не знает об этом

как это

<%-- Usage:
Property2 is xyz... 
Property3 will .. abc. Ignore Property  1 when this is set. etc
--%>
<asp:ServerTag Property1="a"
    Property2="b"
    Property3="c" 
    Property4="d" /> 

Это похоже на размещение комментариев исходного кода над вашими функциями.

Подумайте "сервер на сервер". Это сделает разницу между вашим исходным HTML кодом, похожим на
загроможден html комментарием "pass through" <!--:

<! - Использование свойства: abc, def, ... xyz ->
Отображается содержимое элемента управления сервером.

против. очиститель раздетый "<%-- источник:

Отображение содержимого элемента управления сервером.

Меньше пропускной способности с последним тоже. Никаких посторонних (и вводящих в заблуждение пользователя) комментариев в источнике HTML.

10 голосов
/ 10 марта 2010

Это невозможно, нет. Тэги сервера должны быть правильно сформированы в XML, и вы не можете иметь такие теги в XML. Вы можете поместить комментарий вверху, конечно, так:

<!-- Property2 needed because... -->
<asp:ServerTag Property1="a" Property2="b" Property3="c" />
0 голосов
/ 10 марта 2010

Не обязательно так, но вы можете подумать об украшении свойства в c #, чтобы пользователь знал его актуальность. После этого что-то вроде resharper (или, может быть, против) даст вам эту информацию, когда вы попытаетесь установить его.

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