2010-08-22 20 views
3

我有一個現有的應用程序,其中包含格式化文本塊(標準格式,如粗體,斜體,無序列表等)的一些部分保存在數據庫中。目前這些文本塊以自定義xml格式保存。編輯器是使用WPF-RichtTextBox創建的。什麼是有意義的格式來保存數據庫中的格式化文本?

因爲我必須讓編輯器更加用戶友好並擴展應用程序,並且我知道將來還有SQL-Server Reporting Services和Silverlight必須使用這種標記,所以我正在考慮更改格式已保存的文本塊。 將來會有必須解釋標記下面的應用類型:

  • WPF的應用程序(使用編輯器)
  • HTML的Web應用中(也許有 編輯)
  • SQL-Server報表-服務
  • 的Silverlight(也許用一個編輯器)

我傾向於使用HTML的一個子集。你會使用什麼或建議,爲什麼?也許你也有鏈接到處理這個話題的現有資源?

更新

目前,似乎我將採取HTML:

我計劃在WPF應用程序內ALS MainEditor使用一個RichTextBox。要轉換我將使用here的Microsoft示例轉換器。是否有人知道是否有更新的版本或對陷阱有一些評論?我曾看過Silverlight RichTextBox:對於所有打算做出類似於我的東西的人,都會被警告:Silverlight 4 RichTextBox似乎並不是非常強大(據我所見)。最簡單的事情是帶有項目符號的列表項目必須使用解決方法來完成。它不能在RichTextFormat中導出!不要在沒有測試的情況下依靠這個控制。

對於HTML的網站,我可能會使用CKEditorTinyMce

我也想過用RTF格式作爲,而是因爲Silverlight的RichtTextBox是不支持的話,我也不會用。對於那些有興趣的,here是一個非常有趣的轉換項目。

回答

2

我沒有資格對於WPF和Silverlight來回答,但相對於SSRS和Web應用程序,HTML的一個子集會把你很好,但你要使用2008或更高版本SSRS。

在SSRS 2008,顯示HTML,需要在文本框中佔位符簡單的設置。你可以在這裏看到一個例子:http://dinesql.blogspot.com/2010/05/reporting-services-2008-showing-html.html

在Web應用程序,顯示HTML是超級容易,但我建議先消毒使用AntiXSS庫(使用GetSafeHTMLFragment()方法)的輸出:http://wpl.codeplex.com/

+0

+1爲消毒和謝謝你的答案。事實上,使用WebApp和SSRS的標記功能有兩種使用HTML作爲本機格式的輸出類型。這是爲什麼我傾向於html的原因之一。 – HCL 2010-08-22 20:41:20

+1

@HCL:我發現這個,只是谷歌搜索。它似乎可以在Silverlight中提供HTML呈現解決方案。如果這看起來很好,那麼可以使用HTML代碼片段爲您提供4個平臺中的3個平臺。 http://blogs.msdn.com/b/delay/archive/2007/09/10/bringing-a-bit-of-html-to-silverlight-htmltextblock-makes-rich-text-display-easy.aspx – kbrimington 2010-08-22 20:45:04

0

我計劃在WPF應用程序als MainEditor中使用RichTextBox。要轉換,我將使用這裏的微軟樣品轉換器。是否有人知道是否有更新的版本或對陷阱有一些評論?

我不知道RichTextBox。我已經寫了managed, WYSIWYM HTML edit control for .NET。它專門用於[X] HTML,並在其網站上進行了詳細描述。

相關問題