用剃刀显示编码的html
我将编码的HTML存储在数据库中。
我能正确显示它的唯一方法是:
<div class='content'> @MvcHtmlString.Create(HttpUtility.HtmlDecode(Model.Content)); </div> 它很丑。 有没有更好的方法来做到这一点?
尝试这个:
 <div class='content'> @Html.Raw(HttpUtility.HtmlDecode(Model.Content)) </div> 
 使用Html.Raw() 。  Phil Haack在http://haacked.com/archive/2011/01/06/razor-syntax-quick-reference.aspx上发布了一个很好的语法指南。; 
 <div class='content'> @Html.Raw( Model.Content ) </div> 
这很简单:
 HttpUtility.HtmlDecode(Model.Content) 
另一个解决scheme,你也可以返回一个HTMLString,Razor会输出正确的格式:
在视图本身:
 @Html.GetSomeHtml() 
在控制器中:
 public static HtmlString GetSomeHtml() { var Data = "abc<br/>123"; return new HtmlString(Data); } 
 你也可以简单地使用HtmlString类 
  @(new HtmlString(Model.Content)) 
我将编码的HTML存储在数据库中。
Imho你不应该把你的数据存储在数据库中。 只要存储在纯文本(不编码),只是像这样显示你的数据和你的HTML将被自动编码:
 <div class='content'> @Model.Content </div> 
- 无法加载文件或程序集“System.Web.WebPages.Razor,版本= 2.0.0.0
- 如何使用ASP.NET MVC ViewModels knockout.js?
- ASP.NET MVC 3 Razor:将JavaScript文件包含在head标签中
- HTML编码string – ASP.NET Web窗体VS Razor视图引擎
- 在ASP.NET MVC中使用Tempdata – 最佳实践
- ASP.NET MVC 3 Razor – 将类添加到EditorFor
- 在ASP.NET MVC中将文件返回到View / Download
- 哪里和如何链接_ViewStart.cshtml布局文件?
- 如何使Html.DisplayFor显示换行符?