如何在没有HTML标签的情况下从数据库中获取数据?

时间:2012-08-29 19:58:54

标签: c# asp.net html reporting-services informix

我面临以下问题。

我使用文本编辑器允许用户在将数据存储到数据库之前格式化数据。

我的问题是从我的数据库中检索数据以在我的报告中显示它(报告查看器)。数据显示在HTML tags的非常糟糕的视图中!

如何解决这个问题?

我试过这个方法:

Server.HtmlDecode()

但是保留

3 个答案:

答案 0 :(得分:2)

一种方法是使用正则表达式删除所有html标签:

// I use this static method to make it faster.
private static Regex oClearHtmlScript = new Regex(@"<(.|\n)*?>", RegexOptions.Compiled);

public static string RemoveAllHTMLTags(string sHtml)
{
    if (string.IsNullOrEmpty(sHtml))
         return string.Empty;

    return oClearHtmlScript.Replace(sHtml, string.Empty);
}

答案 1 :(得分:2)

引用:你试过这个方法Server.HtmlDecode()

从你所说的它首先没有编码它开始工作。你可以使用Decoder utf8Decoder = Encoding.UTF8.GetDecoder();使用它或转换为Unicode。

它仍会出现在报告中,但不会产生你所说的剧烈影响。

最好的选择是使用正则表达式。

答案 2 :(得分:1)

您可以尝试使用html formatted textbox来显示该字段。从问题中不清楚它是否是所需的行为,但这实际上会呈现用户输入的一些html标签(例如<b>)。它不支持所有标签,但我不能100%确定如果它不识别标签它会做什么(它可能只是忽略/隐藏它)。

编辑:正如@varg提醒我对该问题的评论,可用性取决于您的SSRS版本。