【问题标题】:Dlls are not loaded in AppDomain when debugging Asp.Net project (the second time)调试Asp.Net项目时,AppDomain中没有加载dll(第二次)
【发布时间】:2013-09-17 07:43:07
【问题描述】:

我在 Asp.Net MVC 项目中有一个项目参考(B.dll),它不是静态使用的。在启动时,我正在查看加载的程序集并在 IoC 容器中动态注册它们的类型。

当我重建 MVC 项目并按 F5 时,我在 AppDomain.CurrentDomain.GetAssemblies() 返回的已加载程序集列表中看到 B.dll

然后我再次按下停止和 F5。这次在加载的程序集中没有B.dll。但是,如果我调用AppDomain.CurrentDomain.Load("B"),它将被正确加载。

如果我重建项目循环重复。

所以问题是:

  1. 我认为,bin 文件夹中的 dll 应该由 IIS 在启动时加载,对吗?
  2. 为什么 Visual Studio 在第一个和第二个调试会话上的行为不同?最重要的是,如何强制它在启动时加载所有库?

【问题讨论】:

    标签: c# asp.net visual-studio debugging dynamic-loading


    【解决方案1】:
    1. 是的。第一次,编译发生时。
    2. 因为这些库将在编译后按需加载。

    这应该有助于How to pre-load all deployed assemblies for an AppDomain

    【讨论】:

    • 感谢您的澄清,提供的链接看起来正是我所需要的,正在研究它
    猜你喜欢
    • 2011-09-05
    • 1970-01-01
    • 2016-06-12
    • 1970-01-01
    • 1970-01-01
    • 2019-08-19
    • 1970-01-01
    • 1970-01-01
    • 2023-03-12
    相关资源
    最近更新 更多