什么是在数据库中保存格式化文本的有意义的格式?

3
我有一个现有的应用程序,其中一些格式化文本块的部分(如粗体、斜体、无序列表等标准格式)保存在数据库中。目前,这些文本块以自定义xml格式保存。编辑器是使用WPF-RichtTextBox创建的。
由于我必须使编辑器更加用户友好并扩展应用程序,并且我知道未来SQL-Server Reporting Services和可能的Silverlight也必须使用此标记,因此我考虑更改保存的文本块的格式。 将来将有以下应用程序类型必须解释标记:
- WPF应用程序(带有编辑器) - HTML Web应用程序(可能带有编辑器) - SQL Server Reporting Services - Silverlight(可能带有编辑器)
我倾向于使用HTML的子集。您会使用或建议什么,为什么?也许您还有现有资源的链接来处理此主题?
更新
目前,似乎我将采用HTML:
我计划在WPF应用程序中使用RichTextBox作为主编辑器。为了进行转换,我将使用来自这里的微软示例转换器。是否有更新版本或者有关注意事项的信息?
对于Silverlight,我已经看过Silverlight RichTextBox:对于所有计划制作类似于我的东西的人,请注意:Silverlight 4 RichTextBox似乎不是很强大(就我所见)。最简单的事情,比如带有项目符号的列表,必须通过解决问题来完成。而且它无法导出RichTextFormat!不要指望这个控件而没有测试它。
对于HTML网站,我可能会使用CKEditorTinyMce
我也考虑使用RTF作为格式,但由于Silverlight RichtTextBox不支持它,我不会使用。对于那些感兴趣的人,这里是一个非常有趣的转换项目。
2个回答

2
我不太了解WPF和Silverlight方面的知识,但是在SSRS和Web应用程序方面,HTML的一个子集就可以满足您的需求,不过您需要使用SSRS 2008或更高版本。
在SSRS 2008中,显示HTML只需要在文本框占位符上进行简单的设置。您可以在此处查看示例:http://dinesql.blogspot.com/2010/05/reporting-services-2008-showing-html.html 在Web应用程序中,显示HTML非常容易,但我建议您首先使用AntiXSS库对输出进行清理(使用GetSafeHTMLFragment()方法):http://wpl.codeplex.com/

+1 为您的答案感到高兴,也感谢您的卫生处理。事实上,通过 WebApp 和 SSRS 的标记功能,有两种使用 HTML 作为本地格式的输出类型。这是我倾向于使用 HTML 的原因之一。 - HCL
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

0
我计划在WPF应用程序中使用RichTextBox作为主编辑器。为了进行转换,我将使用来自此处的Microsoft示例转换器。有人知道是否有更新版本或对陷阱有一些评论吗?
我不知道RichTextBox。
我编写了一个托管的,面向.NET的WYSIWYM HTML编辑控件。它专门用于[X]HTML,并在其网站上详细描述。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接