Wenn ich @ Html.Raw (mystring) Normal es richtig macht Beispiel:Razor - @ Html.Raw() noch kodiert & in Meta-Tag-Attribute
@{ ViewBag.Title = "My Site®"; }
<title>@Html.Raw(ViewBag.Title)</title>
richtig <title>My Site®</title>
machen wird, aber wenn ich es verwenden in einem Attribut:
<meta name="description" content="@Html.Raw(ViewBag.Title)" />
es macht <meta name="description" content="My Site&reg;" />
, die wegen nicht korrekt ist, dann wird es nicht die registrierte Marke machen.
Wie korrigieren Sie dieses Verhalten?
Duplizieren: http://stackoverflow.com/questions/11963453/why-is-html-raw-escaping-ampersand-in-anchor-tag -in-asp-net-mvc-4 und http://stackoverflow.com/questions/12321616/why-is-mvc-4-razor-escaping-ampersand-when-using-html-raw-in-a-title -Attribut –
@ Ek0nomik Es ist nicht wirklich ein Duplikat, weil niemand diese Frage gelöst hat. Ihr Vorschlag war, laden Sie das ganze Tag in die Zeichenfolge und das ist dumm auf jeder Seite zu tun. – ddilsaver
Sie können einfach den Attributnamen in den Parameter '.Raw' einfügen, wie in der zweiten, oben verlinkten Frage gezeigt. Sie müssen eine Arbeit erledigen, da dies ein Fehler ist: http://aspnetwebstack.codeplex.com/workitem/393. –