2008-11-18 8 views
27

Ich habe HTML-Code von FCKEditor in einer Datenbank gespeichert und möchte es auf einer Ansicht anzeigen (gut rendern). So zum Beispiel gespeichert etwas wie:Wie HTML, das in einer Datenbank aus einer ASP.NET MVC-Ansicht gespeichert wird, anzeigen?

This is some sample text 

(Mit dem entsprechenden Stil für vorformatierte-Text)

Der Blick schon:

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

Wird den Benutzer als angezeigt werden hat die erforderliche Zeichenfolge von ViewData anzuzeigen, ich bin nur nicht sicher, was der beste Weg, es dem Benutzer zu zeigen ist.

Antwort

53

versuchen

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

weitere Informationen here @ MSDN online.

hth!

+22

dies für Razor nicht funktioniert, für Rasierer verwenden @ Html.Raw (System.Web.HttpUtility.HtmlDecode (Model.yourhtmlvalue)) – Niraj

+4

das Datum meiner Antwort prüfen .. war es PRE Razor: P –

+2

Danke, dass du mich auf das Datum aufmerksam gemacht hast. Pure, ich habe nur für jemandes Info zitiert, sein wahres Rasiermesser war nicht vorhanden, als du deine Antwort gepostet hast. – Niraj

46

Die Antwort von Pure.Krome vorgesehen ist einwandfrei für MVC2, aber bedenken Sie Razor-Syntax:

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

Alternativ

@Html.Raw(Server.HtmlDecode(Model.yourEncodedHtmlFromYourDatabase)) 
+0

Wie kann ich es so machen, um ein Linktext zu sein – touinta

2

Sie @Html.Raw(str)

Siehe MSDN für mehr verwenden möchten

Gibt Markup zurück, das nicht HTML-codiert ist.

Diese Methode umschließt HTML-Markup mithilfe der IHtmlString-Klasse, die unverschlüsseltes HTML darstellt.