【问题标题】:Setting up DLLs so we can update production ASP.NET app w/o full publish or app restart设置 DLL,以便我们可以更新生产 ASP.NET 应用程序而无需完全发布或重新启动应用程序
【发布时间】:2012-04-17 20:47:34
【问题描述】:

我们的 DLL 包含数百个从 ASP.NET 应用程序启动的自定义客户端进程。我们的客户在执行数据输入时运行这些进程,通常每个客户只有 1 个进程。在任何一天,我们都可能更新其中的 2 或 3 个流程。

目前,这些都包含在一系列 DLL 中,这意味着我们每天要发布几次我们的应用程序。因此,任何登录的客户端都会被引导出系统,因为发布会导致应用重新启动。

有没有一种方法可以更新这些 DLL 而无需每次都完全发布?

【问题讨论】:

  • 如果在bin目录下,则没有

标签: asp.net dll


【解决方案1】:

如果您的客户端进程具有通用 API,那么您可以在 WCF(或类似)服务中单独托管 DLL,并远程调用客户端进程。所以基本上,考虑转向面向服务的架构。

【讨论】:

    【解决方案2】:

    查看来自 Microsoft 的 Managed Extensibility Framework (MEF)。它不仅提供依赖管理,还提供像库加载这样的插件。很可能正是您正在寻找的。​​p>

    【讨论】:

    • MEF 无法帮助加载 DLL,因为它们会发生变化。
    【解决方案3】:

    您可以切换到 SQL 服务器或状态服务器会话,以便在应用重启后保留会话和登录用户。或者将这些 dll 存储在 APP_DATA 中并动态加载。那么你当然要考虑一些刷新系统并用新上传的刷新加载的dll。

    【讨论】:

      【解决方案4】:

      没有明智的方法可以避免应用程序重新启动。请注意对“明智”一词的强调。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-08-10
        • 1970-01-01
        • 2014-09-30
        • 1970-01-01
        • 2021-03-01
        • 2012-05-09
        • 1970-01-01
        相关资源
        最近更新 更多