问题描述
我想知道是否需要在 assemblyA 和 assemblyB 之间共享公共库。 需要实现的是在 assemblyB 代码中加载 assemblyA 并在加载(从对象)其中一种类型后转换如下接口。我读到了条件,例如在每个程序集 A 和程序集 B 中定义的两个接口之间共享某种父类/接口。我们能否以某种方式实现完全解耦,而不必共享某种类型的公共库?
IInterfaceA
{
string name {get; set;}
int age {get; set;}
MethodA(int a);
MethodB(int b);
}
在运行时引入 assemblyA 的当前代码如下所示:
var assembly = Assembly.LoadFrom(mainAssemblyName);
var type = assembly.GetTypes().Single(type => type.Name.Equals("InterfaceA"));
var casted = (InterfaceA)Activator.CreateInstance(type);
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)