为什么我的 DLL 会被覆盖,我该怎么做才能阻止它?

问题描述

这是我所知有限的领域,所以如果我遗漏了任何关键信息,请提出问题,我会尽力提供。直到最近,我还能够将一个项目中的 bin 文件夹中的 DLL 复制到另一个项目中的 bin 文件夹中,但突然间,当我在第二个项目中进行构建时,DLL 被覆盖了。

这个问题是关于我正在使用的 2 个 ASP.NET 项目,项目 A 承担了繁重的工作,包含数据访问层、业务逻辑层等。它被其他项目使用。项目 B 作为抽象层位于顶部,用于处理来自 UI 的请求,仅将需要的内容交付给前端。当我对项目 A 进行更改(例如更新模型)时,我会将 DLL 从项目 A 的 bin 文件夹复制到项目 B 文件夹并重新构建,项目 B 将能够看到更新后的模型。>

但是现在,当我按照相同的过程进行重建项目 B 时,DLL 会被覆盖。

bin 文件不是源代码的一部分,当部署到测试或生产环境时,更新被包裹在一个 nuget 包中,因此部署过程如下所示:

  1. 在测试服务器上构建项目 A
  2. 在项目 B 中获取在构建期间创建的更新后的 nuget 包
  3. 将项目 B 部署到测试服务器

我已经通读了 Stack Overflow 并且看到了对全局访问缓存的提及,但是当我通过在开发人员命令提示符下运行 gacutil -l 查看日志时,我看不到任何内容项目 A 的具体参考。

当我使用 JetBrains dotpeek 检查 DLL 时,我可以看到项目 A 中的 DLL 确实包含更新的模型。

欢迎针对此问题提出任何建议。谢谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)