ich eine Zeichenfolge in Razor mit dem folgenden Code zu drucken versuche:Output Razor Code in @ Html.Raw
@Html.Raw("Welcome @(ViewBag.Content.User.Name)!")
Der Ausgang dieser Saite ist leider: „Welcome @ (ViewBag.Content.User. Name)!". Aber wenn ich es auf diese Weise zu drucken:
@Html.Raw("Welcome " + @(ViewBag.Content.User.Name) + "!")
Der Ausgang des String ist: „Welcome Yanick!“, Genau das, was ich will, aber ich will es nicht auf diese Weise drucken. Gibt es eine Möglichkeit, den Razor-Code innerhalb einer Zeichenfolge auszuführen (siehe erstes Beispiel)? Ich habe versucht auch Html.Encode(), aber das hat nicht funktioniert entweder ...
ich glaube nicht, Sie können. Die zweite Zeile ist in Ordnung, wir benutzen sie alle die ganze Zeit, richtig? –
Ja, ich weiß, aber ich habe es wie die erste Zeichenfolge in der Datenbank gespeichert. Nur ein einfacher, hartcodierter Editor speichert diese Zeichenkette ... –
Wenn sich die Zeichenkette in der Datenbank als "Willkommen @ (ViewBag.Content.User.Name)!" Befindet, dann können Sie sie nur manuell ausführen Zuerst die Razor-Engine, bevor Sie sie an '@ Html.Raw' übergeben. Der Parameter für 'Html.Raw' ist nur eine C# -Zeichenfolge, und Razor analysiert den Inhalt von Zeichenfolgen in Codeblöcken nicht. –