【问题标题】:ASP.net Bin directory - dll loadingASP.net Bin 目录-dll 加载
【发布时间】:2009-01-22 17:58:50
【问题描述】:

我需要在我的 asp.net 应用程序中使用 dll。如何加载不是从 bin 目录中的 dll?

也许我应该提到该应用程序是 asp 代码和 asp.net 代码的混合体。 所以,当我在我的机器上开发它时,我在 bin 目录中放置了一个 dll,但是在我将代码移动到实时环境之后,我不想为使用 asp.net 的每个部分都有一个单独的 bin 目录。

我要移动的只是 .aspx 和 .aspx.cs 文件。有没有办法加载一个 dll NOT FROM /bin(用“使用”语句指定它)?看起来它会自动在 /bin 中查找....

【问题讨论】:

  • 你为什么不想要一个 bin 文件夹?这就是 ASP.NET 的工作原理

标签: asp.net dll


【解决方案1】:

您可以将 DLL 放在应用程序根目录的 bin 文件夹中,也可以将其安装到 Global Assembly Cache (GAC) using gacutil(这要求程序集具有强名称和签名)。

我会把它放在垃圾箱里。

【讨论】:

  • 值得注意的是,要将程序集加载到 GAC 中,它们需要具有强名称并经过签名。
【解决方案2】:

.net 应用程序会在项目的 /bin 以及您放置系统共享 DLL-s 的 GAC(全局程序集缓存)中查找。

如果您的应用是一个 .net 应用(在 IIS 中配置为一个应用),但子文件夹中有 aspx 文件,它们应该会看到根 /bin 文件夹。我会坚持将 dll 保留在 /bin 中,如果这不是 bin 的十分之几(这意味着您的应用组织存在问题)。

【讨论】:

    【解决方案3】:

    GAC 和 bin 是唯一常用的选项。

    你也可以configure your other folder as an additional bin folder,但我不会屏住呼吸——这是从 1.1 开始的,你仍然需要与主应用程序在同一个 vdir 中。

    【讨论】:

      【解决方案4】:

      只需将其他 dll 的目录添加到您的路径环境变量中。必须重新启动 asp.net 进程/Visual Studio 才能使更改生效。为我工作。

      【讨论】:

      • 您能否描述如何将目录添加到我的路径环境变量中,或者提供描述如何的链接?
      【解决方案5】:

      就是这样:因为它的组织很差(它是 asp 和 asp.net 的混合体),它肯定没有正确配置......我认为现在最好有“10,000 个垃圾箱”。

      谢谢大家!

      【讨论】:

      • 尝试在 IIS 中安排一些东西以将其配置为一个应用程序和/或一个虚拟目录...玩一下,也许你可以让它只使用一个 /bin
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-30
      • 2011-02-23
      • 1970-01-01
      • 2015-02-09
      • 2013-06-29
      • 1970-01-01
      相关资源
      最近更新 更多