我想知道c#(甚至可能是cli)中是否有一种标准方法可以有效地将实现逻辑解耦为单独的类库/程序集,这些类库/程序集将由一个进程动态加载,该进程将基于一个公共接口对这些库执行操作。
更准确地说:假设我正在构建一个接收消息的服务,并将这些消息的处理委托给其他东西。就像是:
while(true){
message = read_message_from_somewhere();
class_from_another_lib.do_somthing_with_Message(message);
}
我希望该过程在运行时从某种配置加载类库。我假设这个库会有一些主类或类工厂,它们实现了一些接口部分,如下所示:
ISomePublicIface{
void do_somthing_with_Message(messageT);
}
这一切都让人感觉有点像java beish,我需要做的就是让程序集中的一个类实现某种可注入接口,在应用程序配置中添加一行并免费获得大量东西。