我有一个关于要在我的应用程序中实现的调解器模式的问题(使用C#)。在我的代码中实现模式时,我遇到了循环依赖。类的结构如下:Mediator
和Colleague
组件/类位于不同的程序集中,并且由于调解器模式要求两个组件(类)彼此使用。相互引用时会出现问题。
考虑下面的代码:
namespace Mediator
{
public abstract class IMediator
{
public IColleague colleague{get;set;}
void Register();
void Send();
}
public class MediatorA:IMediator
{
void Register(){//code here}
void Send(){//code here}
}
}
namespace Colleague
{
public abstract class IColleague
{
IMediator mediator;
void Send();
void Recieve();
}
public class ColleagueA:IColleague
{
void Send(){//code here}
void Recieve(){//code here}
}
}
由于Mediater和同事位于不同的 namespace 和程序集中,如何解决循环依赖关系?
最佳答案
您需要定义将包含接口(interface)的第三个程序集。恕我直言,别无选择。
关于c# - 使用C#的中介模式中的循环依赖,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7350671/