2012-04-03 5 views
2

Я понимаю, что <%= для возвращения строкиРазница между `<% #` и `<% =` и asc.net ascx-файлом?

Я, кажется, обычно используют <%# в моих .ascx файлах.

Например следующие работы

OnClientClick=<%# String.Format("return confirm('Are you sure you wish to delete barcode ({0})?');", Eval("BARCODE")) %>

Ниже не работает

OnClientClick=<%= String.Format("return confirm('Are you sure you wish to delete barcode ({0})?');", Eval("BARCODE")) %>

+0

Похоже, что ваши «это работает» и «это не работает» - это точно то же самое ... если я чего-то не упускаю. – TLS

+0

Да, спасибо, я обновил – jax

ответ

5

<% # указывает, есть функция оценки там, которая принимает в связанных данных и проверяет, что данные для столбца или свойства в функции Eval(). Он специфичен для привязки данных в WebForms.

<% = просто ожидает что-то, что может быть преобразовано в строку. Это запутаться EVAL()

И, наконец, есть новый

<% @ в MVC - которая принимает строку ввода, и Html кодирует его, чтобы попытаться избежать XSS.

+0

- это не обозначение MVC '<%:'? – devio

+0

<%: выходы без кодирования. В окне просмотра WebForms. Переключитесь на бритву, и это все @ :) – blowdart

Смежные вопросы