【问题标题】:What direction should we go for maintaining a document management system? [closed]维护文档管理系统应该朝着什么方向发展? [关闭]
【发布时间】:2010-10-03 15:03:11
【问题描述】:

我们在 ASP.NET MVC 之上构建了一个应用程序。我们现在需要允许我们的用户在线管理他们的文档。作为该系统的一部分,用户希望上传文档并与其组织的其他成员共享。

我们有一个现有的 Web 应用程序需要此功能作为增值。我们正在尝试找出满足这种需求的选择。我们最终正在寻找一种后端解决方案,以帮助我们完成与版本控制相关的大量繁重工作。仍然需要通过我们的域模型和 Web 用户界面来维护对文档的访问。

我们需要能够...

  • 上传文件
  • 查看每个文档的版本历史记录
  • 执行全文搜索
  • 计算文件大小

我们正在考虑:

  • 构建我们自己的域模型,并将文档存储在数据库中
  • 与 subversion 集成以将其用作我们的后端。

哪种方法对您有用?每种方法有哪些优点和缺点?还有其他选择吗?

我们选择的解决方案需要遵守以下标准:

  • 需要很好地适应我们的自动化部署。
  • 我们需要能够在本地开发人员机器上运行应用程序,而不需要连接到单独的服务器
  • 我们想要重量轻、易于升级和部署的产品

【问题讨论】:

  • 所以您正在寻找一种工具来为您执行此操作?为什么你说你是在asp.net mvc里做的?
  • 我们有一个现有的应用程序需要此功能作为增值。我们正在尝试找出满足这种需求的选择。我们最终正在寻找一种后端解决方案,以帮助我们完成与版本控制相关的大量繁重工作。

标签: asp.net-mvc svn version-control


【解决方案1】:

Subversion 听起来确实是最好的选择,只需培训必须管理文档的用户如何使用TortoiseSVN,然后将您的文档存储作为项目的子目录。

【讨论】:

  • 我们需要通过现有的应用程序在网络上提供这些文档,这需要客户端登录。我们还需要限制用户可以查看和编辑的文档。你可以用 TortoiseSVN 作为客户端吗?
  • @mr mo:除了通过浏览器,是的。你在拒绝之前看过tortoisesvn吗?
  • 这听起来不像是要走的路——如果你想通过浏览器查看服务器文档并通过浏览器管理上传,那么 TortoiseSVN 不会给你这个。
【解决方案2】:

我们选择构建自己的域模型,并将文档存储在 SQL Server 2008 数据库中。到目前为止,这对我们来说效果很好。

【讨论】:

    【解决方案3】:

    您是否查看过您所描述的基本内容的 Sharepoint?

    【讨论】:

      • 这需要很好地适应我们的自动化部署。
      • 我们需要能够在本地开发人员机器上运行应用程序,而无需连接到单独的服务器
      • 我们想要轻量级且易于升级的东西
    • 您需要提供更多信息,说明您在问题中遇到的具体问题。
    【解决方案4】:

    为什么不直接将 subversion 用于可能满足您开箱即用需求的众多客户端之一?

    【讨论】:

    • 我们需要确保我们的域模型仍然可以控制每个用户能够看到的文档。我们希望用户仍然使用他们在我们现有系统中使用的相同网络界面。
    【解决方案5】:

    如果您自己构建它并使用 C# 和 SVN,那么 sharpSVN 看起来是一个不错的解决方案。通过完全访问 SVN 客户端 API,您应该能够愉快地将 Web 应用程序集成到 SVN 后端。通过 SVN 属性或其他一些元数据存储来加强安全性。

    我能看到的一些问题是:

    • 您认为,如果您有多个站点,则可能很难让不同的 SVN 存储库在它们必须同步时发挥出色(如果必须)。
    • SVN 只存储二进制 blob,因此它只会对对象进行版本控制,而不能为您提供它们的差异。这可能会导致 SVN 数据库非常大。
    • 目前也无法从存储库中清除文件,这也会导致大型 SVN 存储库。
    • 如果不同的人可以修改文档,并期望他们成为文档的不同“分支”,那么使用分布式源代码控制模型可能会更好,这样事情会更容易。

    【讨论】:

      【解决方案6】:

      虽然在服务器上重用 Subversion 之类的东西会很好,但它确实使应用程序的推出更加复杂。如果您对此感到满意,那么 sharpSVN(如 Andrew Cox 所建议)似乎是一个不错的选择。

      如果您不太担心 Subversion 的某些版本控制方面(差异和分支),那么我很想将一个快速文档管理模块组合到您现有的应用程序中。

      我会使用Lucene 来处理棘手的事情——索引和全文搜索。

      【讨论】:

        【解决方案7】:

        如果我是你,我会调查 Sharepoint,或者至少是 Sharepoint Portal 服务。这正是解决方案所针对的场景

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-08-20
          • 1970-01-01
          • 2018-02-02
          • 1970-01-01
          相关资源
          最近更新 更多