非常郁闷的 .NET中程序集的动态加载
记载这篇文章的原因是我自己遇到了动态加载程序集的问题,而困扰了一天之久。
最终看到了这篇博客:http://www.cnblogs.com/brucebi/archive/2013/05/22/Assembly_Load.html?utm_source=tuicool&utm_medium=referral
但是不是直接看到的原文,而是在这里看到的:http://www.tuicool.com/articles/a2EN7j
具体是什么原因不能加载,我也不清楚,也不能描述清楚,说了,连我自己都不相信。
我的项目需求是,要做MVC的插件化,从网上找了很久,
找到了,http://www.cnblogs.com/cjnmy36723/p/3405272.html#3048029
找到了 https://github.com/shiningrise/Plugin.git
下载了项目,在人本来的项目中运行正常,而在我的项目中,运行是不对的。下面我描述为什么不对了。
按照项目介绍,插件能正常加载,而插件引用的程序集是不能加载的,就提示找不到,而且是FileNotFoundException,但是文件确实存在的,应该是没有把程序集加载到Domain当中。
非常郁闷。

被注视掉的部分,就是原来的,在原来的项目中是可以的,我还特地新建了个demo,也是可以的。
非常郁闷。
后来,在网上,我看到了
这两句
http://www.tuicool.com/articles/a2EN7j
LoadFile(string)
- Load和LoadFrom的行为那么复杂,而且加载的不一定就是我指定的程序集,如果我真的确定以及肯定就想加载某个程序集文件怎么办呢?这就是为什么会有LoadFile的原因了。其实,在.NET Framework 1.0中并没有LoadFile,因为有了前面提到的原因,才在.NET Framework 1.1中加入了LoadFile。
- 使用此方法加载的程序集的依赖项不会被自动加载,可以通过AppDomain.AssemblyResolve事件来处理相关程序集的加载。
- LoadFile把程序集加载到no context中,而且允许多个Identity相同但路径不同的程序集同时存在。
然后,把程序内替换成LoadFrom,奇迹般的正确了,而为什么正确了,我也不知道。
非常郁闷。
使用LoadFile的时候,原项目是正确的。而在我自己的项目中是不正确的。
非常郁闷的 .NET中程序集的动态加载的更多相关文章
- html中的图像动态加载问题
首先要说明下文档加载完成是什么概念 一个页面http请求访问时,浏览器会将它的html文件内容请求到本地解析,从窗口打开时开始解析这个document,页面初始的html结构和里面的文字等内容加载完成 ...
- 在Unity3D的网络游戏中实现资源动态加载
用Unity3D制作基于web的网络游戏,不可避免的会用到一个技术-资源动态加载.比如想加载一个大场景的资源,不应该在游戏的开始让用户长时间等待全部资源的加载完毕.应该优先加载用户附近的场景资源,在游 ...
- Java之——Web项目中DLL文件动态加载方法
本文转自:https://blog.csdn.net/l1028386804/article/details/53903557 在Java Web项目中,我们经常会用到通过JNI调用dll动态库文件来 ...
- (转)在Unity3D的网络游戏中实现资源动态加载
原文:http://zijan.iteye.com/blog/911102 用Unity3D制作基于web的网络游戏,不可避免的会用到一个技术-资源动态加载.比如想加载一个大场景的资源,不应该在游戏的 ...
- angularJS ng-repeat中的directive 动态加载template
有个需求,想实现一个html组件,传入不同的typeId,渲染出不同的表单元素. <div ng-repeat="field in vm.data"> <magi ...
- java 中能否使用 动态加载的类(Class.forName) 来做类型转换?
今天同事提出了一个问题: 将对象a 转化为类型b,b 的classpath 是在配置文件中配置的,需要在运行中使用Class.forName 动态load进来,因为之前从来没有想过类似的问题,所以懵掉 ...
- layui中radio的动态加载(进入修改页面时,设置radio)
动态设置 radio 的值让它处于选中状态 效果图 : 前端代码: <div class="layui-form-item"> <label class=& ...
- Android 图片从网页中获取并动态加载到listview中
实现功能: 效果图: 代码:这里
- C# 动态加载程序集信息
本文通过一个简单的实例,来讲解动态加载Dll需要的知识点.仅供学习分享使用,如有不足之处,还请指正. 在设计模式的策略模式中,需要动态加载程序集信息. 涉及知识点: AssemblyName类,完整描 ...
随机推荐
- Java面试常见知识点总结(三)
21.volatile关键字: 一旦一个共享变量(类的成员变量.类的静态成员变量)被volatile修饰之后,那么就具备了两层语义: (1) 保证了不同线程对这个变量进行操作时的可见性,即一个线程 ...
- Eclipse下配置javaweb项目快速部署到tomcat
用惯了VS,再用Eclipse,完全有一种从自动挡到手动挡的感觉啊. 很多同学在Eclipse下开发web项目,每一次修改代码,看效果的时候都有右键项目->Run as -> Run on ...
- linux环境中使用转义字符使命令行字符颜色高亮
而通过转义序列设置终端显示属性的格式为: \033[Param {;Param;...}m 其中转义序列以 \033[ 为开头,m 为设置属性结束,中间部分的 Param 为属性值,{} 表示可以设置 ...
- JavaScript call
<script> function dog() { this.sound = "wangwang~"; this.shout = function () { alert ...
- phpcms V9 整合 Discuz! X2 教程
整合原理: UCenter 作服务端:phpsso 与 Discuz! 分别作 UCenter 的客户端应用:phpsso 与 Discuz! 通过 UCenter 发生交互. phpcms 通过 p ...
- notes
http://www.cnblogs.com/titicia/p/4388318.html http://blog.csdn.net/kanosword/article/details/5258679 ...
- 使用 ApacheBench 进行轻量级压力测试
ApacheBench 是 Apache Http Server 附带的一个轻量级压力测试功能 先下载一个Apache Http Server :http://httpd.apache.org/ 解压 ...
- ExtJS 数据模型
自定义数据模型 数据模型类其实就是一个继承自Ext.data.Model 的类. Ext.define('MyApp.User', { extend: 'Ext.data.Model', fields ...
- RPC框架性能基本比较测试
RPC框架:gRPC.Thrift.Wildfly.Dubbo 原文链接:http://www.open-open.com/lib/view/open1426302068107.html gRPC是G ...
- unicode 和 utf8
关于 unicode utf8 文章来自于 http://blog.csdn.net/tge7618291/article/details/7599902 ascii 主要来表示英文.但是要全世界那么 ...