【问题标题】:C# - reading and displaying HTML from resourcesC# - 从资源中读取和显示 HTML
【发布时间】:2011-11-06 02:02:10
【问题描述】:

.NET 4、VS 2010、C#、MVC 3。

在我的资源文件中,我有:

First line.<p />Second line.

我正在通过 Razor 从视图中读取它:

@Translations.Example

但我的 p 仍然是 p - 换句话说,它们不会被呈现为 HTML。

为什么?

【问题讨论】:

  • 这是一个很好的观点,出于安全原因,默认情况下内容呈现编码。这样可以避免很多 JS 代码注入攻击。当您使用@Html.Raw 时,您决定呈现 HTML 原始内容......然后您还确保呈现的 HTML 是安全的。相比之下,如果默认情况下未对渲染进行编码,则每次用户输入内容时,您都必须确保内容是安全的
  • 基本上,只有在知道内容安全时才调用 Html.Raw。

标签: c# html asp.net-mvc resources razor


【解决方案1】:

@Html.Raw(Translations.Example)

【讨论】:

    【解决方案2】:

    尝试使用Raw扩展方法

    @Html.Raw(Translations.Example)
    

    【讨论】:

      【解决方案3】:

      试试这个:@Html.Raw(YourResourceFile.KeyInTheResourceFile)

      【讨论】:

        猜你喜欢
        • 2010-09-07
        • 2013-03-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-06-17
        • 2023-03-05
        • 2017-02-16
        • 2013-09-19
        相关资源
        最近更新 更多