2012-08-29 31 views
2

我面臨以下問題。如何在沒有HTML標籤的情況下從數據庫中獲取數據?

我使用文本編輯器來允許用戶在將數據存儲到數據庫之前格式化數據。

我的問題是從我的數據庫中檢索數據以在我的報告(報告查看器)中顯示它。數據與HTML tags出現在一個非常糟糕的觀點!

如何解決這個問題?

這個方法我試過:

Server.HtmlDecode() 

但invain

+1

報告服務版本? 2008年提供佔位符。您可以在標記類型中選擇將html標記解釋爲樣式。 – varg

回答

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); 
} 
+0

然後我會失去格式? ,我希望有一種方法可以保持格式不顯示標籤(以正確的格式呈現文本) –

+1

@just_name啊....你用什麼控件來顯示它? – Aristos

+0

因爲我離開辦公室,所以我現在沒有代碼。但正如我記得它是一個單元格 –

1

您可以嘗試使用html formatted textbox顯示場。從問題中不清楚它是否是期望的行爲,但實際上這會使您的用戶輸入一些html標記(如<b>)。它不支持所有標籤,但是我不能100%確定它如果不識別標籤會做什麼(它可能會忽略/隱藏它)。

編輯:正如@varg提醒我,對問題的評論,可用性取決於您的SSRS版本。

2

報價:你嘗試過這種方法Server.HtmlDecode()

從你說明什麼它在這個第一的工作場所不編碼。你可以使用解碼器utf8Decoder = Encoding.UTF8.GetDecoder();使用它或轉換爲Unicode。

它仍會顯示在報告中,但不會對您所說的影響很大。

最好的選擇是按照規定使用正則表達式。

相關問題