必威体育Betway必威体育官网
当前位置:首页 > IT技术

Assembly.Load()不能加载程序集的问题

时间:2019-08-19 19:41:05来源:IT技术作者:seo实验室小编阅读:55次「手机版」
 

assembly.load

编程中,使用反射(IoC)是一个很好的架构。在.Net中,System.Reflection命名空间提供了对反射的支持。然而,很多朋友在使用Assembly.Load()方法时, 却不能正确装载程序集。比如,很多朋友在模仿PetShop的框架时,使用这样的调用方式:

string assemblyName = configurationManager.APPsettings["webDAL"];

string constructor = ConfigurationManager.AppSettings["constructorClass"];

 return (Iexample)Assembly.Load(assemblyName).Createinstance(constructor, false);

然而,在Assembly.Load()方法处,经常出现未能加载程序集的错误:

未能加载文件或程序集“webDAL”或它的某一个依赖项。系统找不到指定的文件

Assembly.Load(assemblyName)实际上是在assemblyName.dll文件中查找类custructor的定义。例如,Assembly.Load("PetShop.sqlServerDAL").CreateInstance("PetShop.SQLServerDAL.Cateogry"),就是在PetShop.SQLServerDAL.dll程序集中查找PetShop.SQLServerDAL.Category类。而在自己定义类库时,往往忽视了生成的程序集的名称。

在类库项目点击右键->属性,可以设定生成的程序集的文件名。只有正确设置了,才能在Assembly.Load(assemblyName)方法中避免找不到程序集的错误。

相关阅读

ExpandableListView 实现点击某个group的时候再去请求

整个项目虽然简单,我还是上传到github了,欢迎star https://github.com/MZCretin/SuperExpandableListView 昨天有个朋友问我有没

Android O Launcher3-Workspace加载

一.简述: Launcher这里我们研究主要是Launcher3(Android O平台),各个手机公司自家的ROM Launcher,咱们也看不到,但是八九不离十啦,他

如何安装和使用DAEMON Tools Lite虚拟光驱并加载ISO、

今天发这贴是为了辅导一些电脑基础比较薄弱的用户,虽然说光盘镜像文件在生活和工作中比较普遍,但似乎还是有一部分人不会,下面来说一

Spring IOC加载全过程

最近看到一位大神的博客,springIOC过程写的那叫一个详细,自己看了一遍之后想把自己看到的整理一份出来,顺便自己也写个博客,加深一下

IDEA——错误: 找不到或无法加载主类Main

IDEA——错误: 找不到或无法加载主类Main 今天启动idea编写一个简单的java项目却发现运行报错。   还用命令检查自己jdk正确安

分享到:

栏目导航

推荐阅读

热门阅读