c# – 一种将汇编负载强制加载到当前域的正确方法
发布时间:2020-12-15 06:55:54 所属栏目:百科 来源:网络整理
导读:我有一个项目,使用几个类库作为我的项目的一部分,第一个AssemblyA被加载,然后装入AssemblyB.在AssemblyA中,有代码执行以下操作 var assemblies = AppDomain.CurrentDomain.GetAssemblies();var assemblyB = assemblies .Where(x=x.GetName() == "AssemblyB")
我有一个项目,使用几个类库作为我的项目的一部分,第一个AssemblyA被加载,然后装入AssemblyB.在AssemblyA中,有代码执行以下操作
var assemblies = AppDomain.CurrentDomain.GetAssemblies(); var assemblyB = assemblies .Where(x=>x.GetName() == "AssemblyB") .First(); var type = assemblyB.GetType("AssemblyB_Type"); 不幸的是,当AssemblyA尝试这样做时,AssemblyB没有加载到CurrentDomain中,所以要加载该程序集,我正在做以下不必要的事情: var x = typeof(AssemblyB.AssemblyB_Type); 编译器显示警告,这行不需要,虽然我找不到文字来解释它,否则它将无法正常工作,所以问题是,你如何正确地(在风水术语)强制汇编加载到CurrentDomain没有做无用的管道 解决方法
您现有的代码是最好的方式(AFAIK).
要摆脱警告,请将其更改为 typeof(AssemblyB.AssemblyB_Type).ToString(); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
热点阅读