web-dev-qa-db-fra.com

ASP.NET: guillemets simples et doubles dans la propriété text d'un literal

Question simple, je sais, mais je n'arrive pas à trouver un moyen de mettre des guillemets simples et doubles dans la chaîne de la propriété text d'un Literal dans asp.net

<asp:Literal runat="server" id="Literal1" Text="This is my "text", isn't it pretty" />

Par exemple, dans l'extrait de code ci-dessus. La chaîne se ferme sur le premier guillemet double autour de 'texte'. Je sais que je pourrais les remplacer par des guillemets simples (ou utiliser tous les guillemets doubles et envelopper la chaîne entre guillemets simples), mais je ne suis pas sûr de savoir comment utiliser les deux. Échapper aux citations ne semble pas fonctionner.

Définir la chaîne sur le code-behind est une option, bien sûr, où je peux échapper aux guillemets, mais j'ai toujours pensé qu'il était préférable de garder du texte statique sur l'aspx, plutôt que d'encombrer le code.

17
Jeff

Vous pouvez essayer l'entité HTML pour le guillemet: &quot;

<asp:Literal runat="server" id="Literal1" Text="This is my &quot;text&quot;, isn't it pretty" />
30
aolde

Vous pouvez utiliser:

 <asp:Literal id="literal1" runat="server">This is my "text", isn't it pretty</asp:Literal>

Cela devrait fonctionner pour vous

6
Paul

vous pouvez utiliser les doubles qoutes dans les guillemets simples comme ceci:

<asp:Literal runat="server" id="Literal1" Text='This is my "text", isnt it pretty' />

Mais si vous souhaitez utiliser les deux en texte, la meilleure façon de le faire est de code derrière

4
Jan Remunda

Je suggérerais des caractères d'échappement, mais je ne connais pas de moyen de les utiliser en ligne. Au lieu de cela, utilisez le code pour initialiser la valeur.

<asp:Literal runat="server" id="Literal1" Text="" />

...

Literal1.Text = "This is my \"text\", isn't it pretty?";

Alternativement, vous pouvez utiliser le codage HTML comme suggéré ailleurs.

<asp:Literal runat="server" id="Literal1" Text="Isn't &quot;it&quot; pretty?" />
1
Mayo

Je voudrais suggérer string.format ...

...

Literal1.Text = string.format ("{0}", "Ceci est mon texte, n'est-ce pas joli?";

0
Avinash Chowdary