Я попытался с помощью этого:Как вы кодируете строку в контроллере MVC?
Forum.Body = WebUtility.HtmlEncode(Forum.Body);
Чтобы закодировать строку текста, но она до сих пор не кодирует переменную. Что случилось с синтаксисом?
Я попытался с помощью этого:Как вы кодируете строку в контроллере MVC?
Forum.Body = WebUtility.HtmlEncode(Forum.Body);
Чтобы закодировать строку текста, но она до сих пор не кодирует переменную. Что случилось с синтаксисом?
Razor автоматически кодирует HTML по умолчанию в качестве меры безопасности.
Если передать объект в Forum
модели с точки зрения и использовать бритву все, что вам нужно будет сделать это:
@Model.Body
В над ним будет кодировать Body
свойство по умолчанию.
Это означает, что вам не нужно кодировать HTML из контроллера.
обновление
Если вы собираетесь выводить HTML вы можете использовать:
@Html.Raw(Model.Body)
Или добавить следующий атрибут к свойству:
[AllowHtml]
public string Body { get; set; }
Для бонусных очков показать @Html .Raw(), так как у меня есть идея, это то, что может действительно хотеть op. Также рассмотрите HtmlString или независимо от того, что этот класс обрабатывается автоматически. –
Спасибо, хорошие баллы. Я обновил его. Я добавлю объяснение HtmlString, когда попаду на компьютер. @timothywalters – hutchonoid