从数据库中检索文本并将其格式化在网站的前端

时间:2013-08-27 21:52:48

标签: c# asp.net sql-server xml sql-server-2008-r2

我有一些当前存储在我的数据库表中的文本为nvarchar。   我目前正在使用存储过程检索文本并将其绑定到前端网格视图中的文字。

我想要做的是检索文本然后格式化,比如插入行间距和制作   某些区域大胆。有可能这样做吗?谁能让我知道如何做到这一点?

让我印象深刻的一个想法是在存储文本时使用XML。但即使我这样做,我如何使文本的某一部分变为粗体并包含行间距。

目前,我的文本存储在数据库表列nvarchar(max)中:

This is the heading this is the content

我想要做的是在网格视图中显示以上内容:

**This is a Heading** (heading in bold)
 This is the content

3 个答案:

答案 0 :(得分:0)

最简单的方法(我曾多次使用过)是将html存储在表中,如下所示:

<h1>This is the heading</h1>This is the content

您必须为使用html添加特殊处理,但它可以正常工作。

您还可以将标题字符串存储在一个字段中,将正文存储在另一个字段中。

除此之外,你必须有一些指示器告诉前面哪个部分的字符串应该加粗等等,这可能会非常复杂

答案 1 :(得分:0)

简短的回答是这是可能的,但需要一些工作。

首先需要确定要以何种格式存储数据,以及在将文本输入数据库之前如何在客户端指定格式。

如果你有用于text-html转换的WYSIWYG编辑器,你可以尝试存储HTML。这是存储方面最简单的方法。

如果您决定使用此方法,请注意您需要在服务器上进行大量验证,以避免跨站点脚本攻击。简而言之 - 确保您在服务器上获得的HTML不包含任何javascript或任何标签,除了您想要支持的那些。

答案 2 :(得分:0)

最好使用AJAX Toolkit的编辑器,不需要任何其他东西,它是一个完整的编辑器,你甚至可以根据需要为你的字体着色。