Qual é o nome oficial para as tags ASP.NET "especiais" como esta:
<%# %>
<%= %>
<%@ %>
<%$ %>
Não consigo descobrir o nome conceitual ou bem conhecido para esses nomes, por isso estou tendo problemas para procurar mais informações. Como bônus, alguém pode me dar um rápido resumo de todas as possíveis "tags especiais" e o que cada uma delas faz (ou me indica um recurso)?
Respostas:
O nome oficial é " delimitadores de script do lado do servidor " ou " expressões embutidas do ASP.NET ". A caixa de diálogo de configurações de destaque da sintaxe do Visual Studio 2008 chama esses "scripts HTML do lado do servidor". Os funcionários da Microsoft os chamam de "nuggets de código" em seus blogs.
<%@ %>
é uma diretiva para páginas da Web do ASP.NET . Usado para páginas e controles para definir as configurações do compilador de página / controle (<%@ Control Inherits="MyParentControl" %>
).<%@ %>
também é uma diretiva de aplicação . Usado para especificar configurações específicas do aplicativo para global.asax. Distinto das diretivas da página, pois usa apenas um conjunto de tags diferente.<% %>
é um bloco de renderização de código (para código embutido) . Uma das quatro formas de blocos de código incorporado . Usado para inclusão de código do lado do servidor noRender()
método (<% x = x + 1; %>
) da classe gerada. Formato: único / multilinha ou vinculado a múltiplos (por exemplo,if/then/else
intercalado com html), mas não pode ser usado para declarar funções.<%= %>
é um bloco de renderização de código (para expressões embutidas) . Usado como uma abreviação para<%Response.Write(value)%>
<%: %>
(não oficialmente um " Bloco de código de codificação de HTML ") é o mesmo que o anterior, mas a saída é codificada em HTML.<%# %>
é uma expressão de ligação de dados . Usado para uma via (somente leitura) ou de duas vias (actualizável) de ligação por meio deEval
,Xpath
,Bind
, ou expressões (por exemplo, o valor seleccionado de um controlo pendente). Vincula expressões a propriedades de controle ligadas a dados por meio da marcação de atributo do controle ou como uma marca separada que gera umaDataBoundLiteralControl
instância com o valor em suaText
propriedade. Expressões são avaliadas por umDataBinding
manipulador de eventos para o controle.<%#: %>
é uma expressão de ligação de dados codificada em HTML (nova no ASP.NET 4.5). Combina a funcionalidade de<%# %>
e<%: %>
.<%$ %>
é um construtor de expressões do ASP.NET . Usado para ligação de expressão de tempo de execução para propriedades de controle por meio dos atributos de tag do servidor. Usado comAppSettings
,ConnectionStrings
ouResources
(ou sua própria extensão personalizada , por exemplo, para uso code-behind propriedades). Essas atribuições são adicionadas aoOnInit()
método da classe gerada.<%-- --%>
é um comentário do lado do servidor . Usado para excluir o conteúdo da compilação (e, portanto, gerará erros se um controle comentado for mencionado no code-behind). Ao contrário dos comentários html, o conteúdo não será incluído na saída.<!-- #Include ... -->
é uma diretiva de inclusão do servidor . Usado para inserir o conteúdo de um arquivo na página, controle ou arquivo global. Útil onde um controle de usuário é um exagero e uma página mestra não pode ser usada.Há também um bloco de declaração de código , o formulário final do bloco de código incorporado.
Isso é usado para incluir membros adicionais (métodos etc.) na classe gerada a partir da marcação do ASP.NET. Eles apenas foram fornecidos "principalmente para preservar a compatibilidade com versões anteriores da tecnologia ASP" e não são recomendados para uso.
fonte
Não há resposta para a sua pergunta de nome, mas a página "Sintaxe da página ASP.NET" do MSDN é muito boa (ou melhor, essa é a página de nível superior; as páginas abaixo fornecem mais informações).
Edição: Eu já tinha pensado que
<%# ... %>
não estava incluído na lista, mas é claro que é, em expressões de ligação de dados. Doh.fonte
Sempre achei esta página de Início Rápido muito útil, sempre que tenho dúvidas sobre a sintaxe do lado do servidor. Ele detalha 8 estilos de marcação diferentes e fornece exemplos ilustrativos de cada um, além de explicar os prós e os contras.
Porém, não menciona a diretiva no nível da página, que o IIRC está detalhado em outra parte do Início Rápido.
Obviamente, isso é relevante para o ASP.NET 2.0.
fonte
Os funcionários da Microsoft os chamam de "pepitas" ou "pepitas de código" às vezes.
fonte
Eu também ouvi essas chamadas "picadas em V", inclusive no Podcast StackOverflow.
fonte