web-dev-qa-db-fra.com

Comment afficher du HTML stocké dans une base de données à partir d'une vue ASP.NET MVC?

J'ai du code HTML émis par FCKEditor stocké dans une base de données et je voudrais l'afficher (bien le rendre) sur une vue. Ainsi, par exemple, quelque chose stocké sous:

<>pre<>This is some sample text<>pre</&gt

Sera affiché à l'utilisateur comme:

This is some sample text

(Avec le style approprié pour le texte pré-formaté)

La vue a déjà la chaîne requise à afficher à partir de ViewData, je ne suis pas sûr de la meilleure façon de la montrer à l'utilisateur.

29
Jedidja

essayer

<%= System.Web.HttpUtility.HtmlDecode(yourEncodedHtmlFromYouDatabase) %>

plus d'informations ici @ MSDN en ligne .

hth!

54
Pure.Krome

La réponse fournie par Pure.Krome est sans faille pour MVC2, mais considérez la syntaxe Razor:

@Html.Raw(System.Web.HttpUtility.HtmlDecode(Model.yourEncodedHtmlFromYourDatabase))

Alternativement,

@Html.Raw(Server.HtmlDecode(Model.yourEncodedHtmlFromYourDatabase))
48
whoblitz

vous voulez utiliser @Html.Raw(str)

Voir MSDN pour plus

Renvoie un balisage qui n'est pas encodé en HTML.

Cette méthode encapsule le balisage HTML à l'aide de la classe IHtmlString, qui restitue du HTML non codé.

2
Moes