2009-06-30 3 views
2

Okay, vielleicht ist das ein Nein, nein im MVC-Muster. In diesem Fall ist das die Antwort, nach der ich suche. Nehmen wir an, ich habe Content HTML in einer Datenbank und möchte ihn an die View weitergeben. Ich gehe davon aus, dass ich eine ViewData-Eigenschaft verwenden könnte, um dies an die Seite weiterzuleiten. Welche Art von Massage muss ich mit der Zeichenfolge tun, um etwas wie <h1>Hello World</h1> zu erhalten als 'Hallo Welt' anstelle von '<h1> Hello World/h1 >'.Wie übergibt man HTML an die Seite in View über ViewData in ASP.NET MVC?

+0

Beachten Sie, dass die Verwendung von ViewData für solche Sachen kein "no no" ist, aber ich denke, dass das starke Eintippen Ihrer Ansicht und/oder die Verwendung des MVVM-Musters eine etwas bessere langfristige Strategie und weniger Tippfehler ist. fehleranfällig. –

Antwort

2

Nichts, nur tun <%=ViewData["yourkey"] %> statt <%=Html.Encode(ViewData["yourkey"]) %> in Ihrer Sicht.

Hinweis: Tun Sie dies nur, wenn Sie absolut sicher sind, dass Sie den Daten in der Datenbank vertrauen!

+1

Das ist großartig ... du meinst, der Code könnte helfen? Aber im Ernst, danke, dass du das Offensichtliche auf eine Weise aufgezeigt hast, die mich nicht dumm gemacht hat. –

0

Sie müssten den HTML-Code entfernen, bevor Sie die Zeichenfolge in ViewData einfügen.

BEARBEITEN: Wenn Sie ViewData direkt auf die Seite drucken, sollte das HTML-Markup nicht entfernt werden.

Das ist C#, aber es ist sehr ähnlich in VB.NET.

+0

Ich möchte die HTML in der Zeichenfolge als HTML interpretiert werden, wenn es auf die Seite gelangt. –

Verwandte Themen