如何使用Word编辑数据库中的文档

How to use Word to edit documents in a database

这可能是完全不可能的,但我还是会问的:)

在我们的应用程序中,我们将所有数据保存在数据库中(这并不奇怪)。除此之外,我们还保存了一些文档,并允许用户使用我们拥有的内置编辑器编辑这些文档。

我们想用 Microsoft Word 替换它(我们没有向后兼容,所以忽略现有文档)。

理想情况下,我想要类似于 OneDrive 或 SharePoint 的功能。用户在我的应用程序中找到文档,在 Word 中打开,更改自动保存回打开文档的位置。

看过 Microsoft.Office.Interop.Word 我可以打开和编辑 Word 文件,但我需要保存到数据库(我认为流就足够了。我想我可以重定向它到数据库)。有人知道打开流的方法吗?

我还查看了 DocumentFormat.OpenXml.Wordprocessing,它似乎为我提供了从流中编辑 Word 文档的句柄,但我真的很想在 Word 应用程序中打开,而不必从头开始重新实现 Word .

应用程序是用 C# 和 WPF 编写的,如果重要的话:)

你的 /彼得

您有两个选择:

  • 将 Word 文档保存到临时文件夹,从您的应用启动 Word,将位置指定为命令行参数;文档关闭后(注意 Word 创建的锁定文件),将其保存回后端存储;
  • 实施 WebDAV 或 Word 支持的任何其他协议以连接到文档管理系统(例如 SharePoint)。

第二个选项会导致相当大的开发工作and/or使用可能实现此类功能的第 3 方库。如果您考虑自己开发它,我会从微软的 open specifications.

开始