2015-09-11 6 views
5

Ho letto del nuovo supporto per Tag Helpers in MVC 6 e ora devo creare il mio. Vedo che il costruito nel aiutanti di tag per gli elementi HTML esistenti sono tutti prefisso "Asp"I miei Helper personalizzati ASP.Net 5 MVC 6 hanno un prefisso asp-?

Ad esempio: <a asp-controller="Home" asp-action="Index">Home</a>

Ma per quanto riguarda i miei aiutanti di tag personalizzati. Dovrei anche prefissare quelli con "asp-" per mostrare che è in esecuzione sul server. O dovrebbe essere riservato agli attributi del framework? Dovrei invece creare il mio prefisso di nome/azienda personalizzato?

C'è qualche indicazione su questo argomento che ho perso?

+0

Grazie per la modifica @Taylor Mullen! speriamo che sia sufficiente per riaprirlo. In realtà voglio davvero conoscere la risposta prima di andare e inserire i miei helper tag personalizzati attraverso il mio codice solo per doverli modificare in seguito. Ad essere onesti, non penso che al momento ci sia una guida ufficiale su questo. –

risposta

6

Gli helper dei tag che hanno come target existing HTML elements devono prefigurare i nomi degli attributi con un prefisso che indica che l'attributo è additivo ed eseguito sul server. Ad esempio, gli Helper di ASP.NET 5 con tag incorporati utilizzano il prefisso "asp-". Il prefisso "asp-" non è considerato un prefisso riservato, quindi gli sviluppatori possono copiare tale convenzione. Alcuni team preferiranno utilizzare le proprie convenzioni di denominazione per distinguere i loro aiutanti tag.

Se un tag helper ha come target un elemento personalizzato, gli attributi non devono essere prefissati. Gli elementi personalizzati vengono elaborati solo sul server, quindi non è necessario il prefisso per indicare l'elaborazione del server. Un buon esempio è EnvironmentTagHelper. Il seguente markup viene dal file Views/Shared/_Layout.cshtml creato da una nuova app Web ASP.NET.

<environment names="Development"> 

Vedi anche Authoring Tag Helpers

+0

Grazie, mi rallegro di averlo chiarito prima di andare troppo lontano con un progetto. –

0

Ogni TagHelper ha come target uno o più elementi HTML specifici o tag personalizzati.

per esempio un'occhiata AnchorTagHelper, Si può vedere, TargetElementAttribute viene utilizzato per associare questo TagHelper con l'HTML standard un elemento:

[HtmlTargetElement("a", Attributes = ActionAttributeName)] 
//... 
public class AnchorTagHelper : TagHelper 

Così il vostro tag personalizzato aiutante ha le proprie pre-fix.

+1

Il criterio MS su questo è che è OK usare il prefisso "asp-". Vedi la mia risposta qui sotto che sta entrando nella nostra documentazione TH. – RickAndMSFT

+1

@ RickAnd-MSFT Grazie per la risposta :) –

Problemi correlati