惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Y
Y Combinator Blog
博客园_首页
雷峰网
雷峰网
V
V2EX
博客园 - 司徒正美
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
博客园 - Franky
月光博客
月光博客
Hugging Face - Blog
Hugging Face - Blog
WordPress大学
WordPress大学
T
Tailwind CSS Blog
小众软件
小众软件
博客园 - 叶小钗
美团技术团队
酷 壳 – CoolShell
酷 壳 – CoolShell
Apple Machine Learning Research
Apple Machine Learning Research
IT之家
IT之家
MyScale Blog
MyScale Blog
Blog — PlanetScale
Blog — PlanetScale
大猫的无限游戏
大猫的无限游戏
Jina AI
Jina AI
人人都是产品经理
人人都是产品经理
H
Help Net Security
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻

博客园 - Boy Xie

sql xpath 收藏 HTTP 错误 sql2008 备份 javascript小收藏 转载 收藏sharepoint修改该服务器机器名 5月12日 日志 2010年5月11日日志 公司居然使用监听设备,大家来讨论下IT公司应该怎样管理 历史人物谈股市 常考的js笔试语句 - Boy Xie - 博客园 C# 读取excel - Boy Xie dns服务器列表 EXTJS 双层表头 记录 常用js收藏 页面宽度 SQL中取得时间的一些技巧 使用深度V8.1 系统后打开部分文件夹缓慢 判断客户端是否安装framework ascII 表 收藏
loadfrom 与 loadfile 区别
Boy Xie · 2008-11-19 · via 博客园 - Boy Xie

郁闷,一个反射找不到依赖项的buger 找了一整天.............................

原因是在动态加载dll的时候,之前这个dll已经使用Assembly.LoadFile加载过一次了,在动态加载的方法中使用Assembly.LoadFile就无效,而加载的dll中又有其他引用.........................

再次复习一次基本区别

区别:
1、Assembly.LoadFile只载入相应的dll文件,比如Assembly.LoadFile("a.dll"),则载入a.dll,假如a.dll中引用了b.dll的话,b.dll并不会被载入。
Assembly.LoadFrom则不一样,它会载入dll文件及其引用的其他dll,比如上面的例子,b.dll也会被载入。
2、用Assembly.LoadFrom载入一个Assembly时,会先检查前面是否已经载入过相同名字的Assembly,比如a.dll有两个版本(版本1在目录1下,版本2放在目录2下),程序一开始时载入了版本1,当使用Assembly.LoadFrom("2\\a.dll")载入版本2时,不能载入,而是返回版本1。
Assembly.LoadFile的话则不会做这样的检查,比如上面的例子换成Assembly.LoadFile的话,则能正确载入版本2。