【问题标题】:Update one DLL file in an ASP.NET website project更新 ASP.NET 网站项目中的一个 DLL 文件
【发布时间】:2015-01-05 13:22:36
【问题描述】:

网络开发。我在一个网站项目中工作,我正在尝试更新其中一个 dll 文件。我已经搜索了几个小时来寻找有关 stackoverflow 的解决方案,但没有运气。

我们在 Visual Studios 中的网站项目由一个使用三个 C# 项目的网站组成。我正在尝试仅更新其中一个 C# 项目。目前该网站正在生产中,这些项目的 DLL 文件位于 /bin 文件夹中。

  1. 我在 VS 中打开了解决方案并进行了更改。
  2. 我构建了整个解决方案并检索了新的 dll。
  3. 我使用 IIS 停止了我们的进程内网站并覆盖了 dll 并再次重新启动。

执行此操作时,我收到一个缺少方法异常作为错误。我希望有一种直接的方式来更新我们的网站项目,因为我只需要更改大约两行代码,并且交换 dll 文件似乎是最简单的方法。

感谢大家的帮助,请耐心等待我学习缓慢,我会问很多问题。

【问题讨论】:

  • 我在尝试仅更新其中一个文件时遇到了问题;能否通过复制粘贴到服务器更新所有代码,看看是否仍然出现错误?
  • 我不是只上传一个dll文件,而是将bin文件夹中的所有东西都换成新建的项目?
  • 基本上复制现有项目的所有 DLL 和 Web 文件。这通常是我进行部署的方式,并且对我有用。
  • 在您正在更改的项目中,因为它似乎正在被主web dll引用和使用,如果您更改方法签名或删除方法,您将无法逃脱更改一个dll。例如,如果 dll 包含一个名为 GetUser(int id) 的方法,并且您将该方法更改为 GetUser(string id),那么如果我们使用该方法,Web 应用程序将不再工作。从你写的错误来看,它似乎找不到它期望在那里的方法。
  • 顺便说一句,更改 BIN 中的 DLL 依赖项应该重新启动应用程序。但有时您需要停止池以释放 DLL。你肯定搞砸了一些方法签名。如果你不认为,是这种情况,尝试删除 Asp.net 缓存

标签: c# asp.net .net visual-studio-2010 dll


【解决方案1】:

发生这种情况的原因之一可能是您的 dll 是使用与服务器上不同版本的 .net 框架构建的。您可以检查一下,看看是否可以解决问题。

【讨论】:

    猜你喜欢
    • 2011-02-03
    • 2020-12-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多