【问题标题】:How do I share ASP.NET code between different web apps on different servers如何在不同服务器上的不同 Web 应用程序之间共享 ASP.NET 代码
【发布时间】:2015-07-14 21:20:48
【问题描述】:

我们在 ASP.NET 中构建了几个不同的应用程序,它们运行同一平台的不同部分。 IE。管理网络应用程序、面向公众的网络应用程序和一些非网络应用程序(即 .exe 应用程序)都需要执行某些共享功能。

理想情况下,由于可维护性问题,我不想克隆代码。直到最近,我们都在同一台服务器上运行所有这些,因此我们可以将一些 DLL 放入全局程序集缓存中(尽管我们从未解决过这个问题并最终得到了克隆代码)。

现在我们已将系统的各个部分移至单独的服务器,将共享代码放入 GAC 并不能解决克隆代码问题。有没有办法在不复制的情况下跨多个服务器共享代码?

【问题讨论】:

  • 将您的共享代码实现为 Web 服务(选项:WCF/REST/ASMX)并在您的应用程序中使用它。
  • 一个网络服务可以工作,但我认为它可能有点慢

标签: asp.net iis


【解决方案1】:

您想要执行分布式执行,因为您想要在不同的机器上启动和执行,这可能很容易实现共享文件夹(但您应该非常小心安全性)。

另一种解决方案是创建一个 Web 服务,该服务公开一种方法来启动可执行文件或运行您要共享的任务。这样你就只有一个地方可以更新代码了。

【讨论】:

    【解决方案2】:

    我能想到三个选项:

    1. 一个包含多个项目的单一解决方案,包括另一个包含该平台的项目。
    2. 在不同的解决方案上使用平台/引擎并与每个项目共享 dll(您必须每次更新)。
    3. 提供与所有项目共享的 API。

    【讨论】:

      【解决方案3】:

      你们已经连接到 TeamExplorer 了吗?假设你的 IDE 有它。否则尝试将代码发布到同一服务器。

      【讨论】:

      • 是的,我们正在使用 Visual Studio 和 Team Foundation Service
      猜你喜欢
      • 1970-01-01
      • 2020-06-11
      • 1970-01-01
      • 1970-01-01
      • 2011-12-15
      • 1970-01-01
      • 2017-06-16
      • 2010-12-10
      • 1970-01-01
      相关资源
      最近更新 更多