从/向SQL保存和检索RichTextBox.Document?

时间:2009-08-23 13:43:10

标签: wpf sql-server-2005 richtextbox

我想使用Wpf RichTextBox编辑数据并将其重新保存到SQL字段。 我当然需要将文本保存为富文本,当然不仅仅是简单的文本。

  1. 哪种数据类型最适合存储在SQL Server中(2005 - 忘记文件流)?
  2. 如何保存/检索它?

2 个答案:

答案 0 :(得分:9)

您可以使用XamlWriter

将文档保存到XAML字符串
        StringWriter wr = new StringWriter();
        XamlWriter.Save(richTextBox.Document, wr);
        string xaml = wr.ToString();

然后,您可以像任何其他文本一样将XAML字符串保存到数据库中。

要从XAML字符串重新加载,请使用XamlReader

        FlowDocument doc = XamlReader.Parse(xaml) as  FlowDocument;

答案 1 :(得分:2)

SQL中的数据类型可能应该是NVARCHAR(MAX):Nvarchar表示您可以存储unicode,而MAX意味着您可以存储无限量(最多2GB)数据。