<asp: XXXX> против <% #%> / <% @%> - PullRequest
       3

<asp: XXXX> против <% #%> / <% @%>

0 голосов
/ 01 сентября 2010

Я начинаю изучать ASP.NET и просматриваю обучающие видео на www.asp.net .Я понимаю, что основная концепция фрейма веб-приложения работает как ASP / PHP / ASP.NET.HTML / XHTML создается со специальными тегами, которые сервер знает для чтения и замены на контент.Я немного поработал с ASP во время летней стажировки в 90-х.

И все же с несколькими примерами ASP.NET, которые я видел до сих пор, кажется, что ASP.NET имеет два типа интерпретируемых сервером тегов.

В большинстве случаев я вижу <asp:XXXX > теги, такие как

<asp:ContentPlaceHolder ID="HeadContent" runat="server">
</asp:ContentPlaceHolder>

, но я также вижу обычные теги ASP, такие как

<%@ Master Language="C#" AutoEventWireup="true" CodeBehind="Site.master.cs" Inherits="TailspinSpyWorks.SiteMaster" %>

В чем разницадва формата тегов?Оба интерпретируются сервером правильно?Зачем мне использовать один над другим?

1 Ответ

5 голосов
/ 01 сентября 2010

Теги <%@ %> называются директивами , они используются компиляторами для компиляции страницы или пользовательского элемента управления.

Теги <asp:....> - это всего лишь серверные элементы управления ASP (другие префиксы могут быть пользовательскими элементами управления и т. Д.), Они являются компонентами на самой странице.

Из вашего заголовка <%# %> опять нечто иное, оно называется выражением привязки данных , это синтаксис привязки, используемый для привязки всего, что находится внутри, например: <%# Eval("property %>.

Существует также <%= %>, что эквивалентно Response.Write() для вывода содержимого непосредственно на странице, и есть версия <%: %>, которая также выполняет html-кодирование для очищенного вывода в .Net 4.0.

Все это просто имеет разные цели, так что вы не обычно выбираете между ними (хотя некоторые случаи, безусловно, перекрываются), они просто используются в разных ситуациях.

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