Les aides HTML créent du HTML, qui devrait normalement être sorti brut avec <%= %>
. Si vous avez utilisé <%: %>
pour HTML-échapper la sortie d'une aide HTML, vous verrez la source HTML produite sur la page en tant que texte (par exemple littéralement <input name="foo" value="bar">
à l'écran), ce qui n'est probablement pas ce que vous voulez.
Il est de l'aide de HTML-échapper tout contenu de texte à l'intérieur, pour la sécurité. Oui, si vous écrivez un helper HTML personnalisé et que vous vous trompez, en oubliant les chaînes de codage HTML, votre assistant insère du contenu textuel ou des valeurs d'attribut dans la sortie - vous aurez des failles de sécurité. Vous devez savoir ce que vous faites en vous échappant pour écrire une aide HTML.
Microsoft, malheureusement, apparemment ne sont pas, comme le premier exemple dans leur tutorial échoue complètement:
return String.Format("<label for='{0}'>{1}</label>", target, text);
Whoops. Espérons que ces chaînes d'identification et de texte ne proviennent pas de données non fiables!
[pourquoi sont des tutoriels Web toujours si lamentablement terribles à échapper à des problèmes?]
Parfait! C'est tout! – SoaresLuciano