При редактировании aspx файла я обнаружил оба этих открывающих тега, которые использовались для кажущейся же вещи. Есть ли разница, и да, что это такое?
В чем разница между открывающими тегами <% # и <% =?
Ответ 1
<%=
является эквивалентом <% Repsonse.Write()
Здесь вы можете написать любой контент: например
<%=myProperty + " additional Text" %>
<%#
является обязательным выражением. Вы можете получить любое общедоступное значение в текущем контексте (например, в GridViews). Но вы не можете смешивать контент здесь.
Посмотрите MSDN для получения дополнительной информации.
Ответ 2
Отличие состоит в том, что символ # указывает директиву привязки данных, которая разрешена во время привязки данных (например, при вызове Page.DataBind), а знак = определяет оценочное выражение, которое просто оценивает и выводит на вывод HTML когда эта строка обрабатывается.
Изменить: просто добавив, что только внутри <% #% > у вас есть доступ к функциям привязки данных, таким как Eval.
Ответ 3
<% = является сокращением для Response.Write().
<% # указывает, что вы работаете с контейнером данных в элементе управления с привязкой к данным.