我想在数据库(mssql)中保存我的HTMLEDITOR的信息,但是当我对数据进行编码并保存它没问题时,但是当我恢复它或打开数据时,它们不会打开任何内容。 我认为这个问题是它的标准。
using (var output = new MemoryStream())
{
string docx = string.Empty;
byte[] bytesDocx = null;
this.ASPxHtmlEditorTemplate.Export(HtmlEditorExportFormat.Docx, output);//pass the data of the editor and assign to stream
output.Flush();
output.Position = 0;
using (var reader = new StreamReader(output))
{
docx = reader.ReadToEnd();// assign the stream to a STRING
bytesDocx = Encoding.UTF-8.GetBytes(docx);//encode the STRING to UTF-8
using (var uow = new UnitOfWork())
{
//here some instructions to save the "bytes" to TEXT in a MSSQL DB
uow.CommitChanges();
}
}
答案 0 :(得分:-1)
我建议您将*.docx
存储为XML文档(因为它实际上是XML):
XmlDocument xmldoc = new XmlDocument();
xmldoc.Load(docxStream);
string text = xmldoc.DocumentElement.InnerText;
或使用Save byte[] into a SQL Server database from C#文章中描述的技术将流'字节直接存储到数据库而不进行任何“to-string”转换。