4

如何编辑存储在 SQL Server 表中的 Word 文档 (.docx)?

这是暂定的工作流程:

  1. 通过 Ideablade 从 SQL 表中读取 BLOB
  2. 将 BLOB 作为 .docx 写入磁盘
  3. 使用 Word 打开 .docx
  4. 用户进行更改
  5. 使用 Word 保存 .docx
  6. 将 .docx 读入 BLOB
  7. 通过 Ideablade 将 BLOB 写回 SQL 表

欢迎所有示例代码?
我相信已经有很多人这样做了。

关于如何简化此过程的任何其他想法?

我正在使用 VB.NET、.NET 3.5 SP1、WinForm 和 SQL Server 2008。

4

3 回答 3

4

好吧,至于如何,这里是如何读取 blob并将blob写入SQL。尽管坦率地说,除非您有很好的理由,例如现有的备份系统,否则最好将文件存储到文件系统以及数据库中的路径和元数据。不管怎样,把它抽象到你的 BLL 中,这样你就可以在以后改变主意。

于 2010-08-31T20:50:30.487 回答
2

从数据库中检索和更新 BLOB 应该不是问题,您会在网上找到很多示例代码来执行此操作。

解决问题的一种简单方法是在某处创建“临时”或“工作”目录并使用 System.IO.FileSystemWatcher (示例代码)对其进行监视。当用户想要编辑文件时,从数据库中获取它并将其存储在目录中。每当用户保存文件时,您都会从 FileSystemWatcher 收到通知,因此您可以将其保存到数据库中。不要忘记不时清空目录。

于 2010-08-31T20:59:11.360 回答
0

我认为最有效的方法是将其构建为 MS Word 本身的附加组件。示例包括 Save to Sharepoint、Save to Moodle 和其他类似的加载项。

于 2010-08-31T20:45:51.467 回答