Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Code Render Blocks
|
|||
|---|---|---|---|
|
#18+
Поясните мне, пожалуйста, хоть вкратце, разницу между конструкциями <%= %> и <%# %> Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2005, 14:20 |
|
||
|
Code Render Blocks
|
|||
|---|---|---|---|
|
#18+
http://www.gotdotnet.ru/DotNet/FAQ/ASPNET/26483.aspx <%# %> data-binding expression <% %> code render block <%= %> code declaration block <script runat="server"> </script> server code declaration block Блок <%# %> называется data-binding expression - выражение привязки к данным. Код из этих блоков используется в методах-обработчиках события DataBinding элемента, в теле которого блок был объявлен. Код этого метода выглядит в общем случает так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. В теле блока <%# %> можно свободно использовать переменные Container и target. Следует помнить, что объявленные в странице свойства или поля с такими именами будут перекрыты этими переменными в коде блока привязки данных. Блок <% %> и <%= %> называется code render block - блоки отображения. Код из этих блоков складывается в методы-делегаты вызываемые на стадии Rendering тех элементов, внутри которых данные блоки были размещены разработчиком. Первый блок предназначен для внедрения в страницу кода, который можно выполнить на этой стадии, и вовсе не обязательно должен как-то сказаться на итоговом ее соджержимом, второй используется в виде <%= someExpr %> является сокращением <% Response.Write(someExpr) %>. Здесь someExpr - это любое выражение, которое будет обработано методом Write() класса HtmlTextWriter. В теле блока <% %> допустимо объявлять переменные, тогда они будут локальными для того метода, в котором данный блок будет реализован. В теле блока <% %> нельзя объявлять методы или типы. Блок <script runat="server"> </script> называется server code declaration block - блок объявления кода. Содержимое данных блоков ASP.NET добавляет в объявление класса страницы, при создании итоговой dll, соответственно в коде блока должны быть только объявления методов, переменных, и классов, которые будут доступны в коде всей страницы. Поскольку данный код содержится в классе, наследуемом от класса страницы, объявленного в code-behind файле (или непосредственно от System.Web.UI.Page), здесь можно переписывать объявления виртуальных методов/свойств родительского класса. Код во всех блоках выполняется в области видимости страницы: т.о. если будет написано <% SomeProp = "SomePropValueStr" %> свойство SomeProp должно быть объявлено либо здесь же, в странице, с помощью блока объявления кода, и тогда область видимости SomeProp может быть любой, либо в code-behind файле, и тогда область видимости SomeProp должна быть не меньше Protected. Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2005, 14:43 |
|
||
|
|

start [/forum/topic.php?fid=18&fpage=975&tid=1393421]: |
0ms |
get settings: |
6ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
25ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
32ms |
get tp. blocked users: |
2ms |
| others: | 227ms |
| total: | 319ms |

| 0 / 0 |
