首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何从指定位置而不是 GAC 加载引用的 dll?

从指定位置加载引用的 DLL,而不是从 GAC(全局程序集缓存)加载,可以通过以下几种方式实现:

  1. 使用程序集绑定重定向(Assembly Binding Redirection):在应用程序的配置文件(如app.config或web.config)中,可以通过配置<assemblyBinding>元素来指定程序集的加载方式。可以使用<probing>元素指定程序集的搜索路径,从而实现从指定位置加载引用的 DLL。具体配置方式可以参考微软官方文档:https://docs.microsoft.com/en-us/dotnet/framework/configure-apps/file-schema/runtime/assemblybinding-element
  2. 使用Assembly.LoadFrom方法:在代码中使用Assembly.LoadFrom方法可以加载指定路径的程序集。例如,可以使用以下代码加载位于指定路径的 DLL:
代码语言:csharp
复制
string assemblyPath = "C:\\path\\to\\your.dll";
Assembly assembly = Assembly.LoadFrom(assemblyPath);
  1. 使用AppDomain.AssemblyResolve事件:在应用程序的入口点(如Main方法)中,可以订阅AppDomain.CurrentDomain.AssemblyResolve事件,并在事件处理程序中根据需要的程序集名称,返回指定路径的程序集。例如:
代码语言:csharp
复制
AppDomain.CurrentDomain.AssemblyResolve += (sender, args) =>
{
    string assemblyPath = "C:\\path\\to\\your.dll";
    return Assembly.LoadFrom(assemblyPath);
};

以上是几种常用的方式,可以根据具体需求选择适合的方法来从指定位置加载引用的 DLL。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

6分27秒

083.slices库删除元素Delete

16分8秒

人工智能新途-用路由器集群模仿神经元集群

领券