C# 相互注入物体
我使用的典型体系结构由业务层中的Manager对象组成。我在.NETCore/.NET标准中使用DI/IOC。管理器被注入服务层,因此服务被注入我们的API控制器。所以我现在在一个经理班工作。我现在需要一个驻留在另一个管理器类中的方法。 通常我通过服务层返回控制器,然后调用下一个服务,然后通过该服务调用管理器 我想知道是否可以将我需要的经理直接注入到我工作的经理中。因此,切断返回控制器的跳闸,然后通过其他服务返回给其他经理。基本上我有两个经理C# 相互注入物体,c#,.net,dependency-injection,C#,.net,Dependency Injection,我使用的典型体系结构由业务层中的Manager对象组成。我在.NETCore/.NET标准中使用DI/IOC。管理器被注入服务层,因此服务被注入我们的API控制器。所以我现在在一个经理班工作。我现在需要一个驻留在另一个管理器类中的方法。 通常我通过服务层返回控制器,然后调用下一个服务,然后通过该服务调用管理器 我想知道是否可以将我需要的经理直接注入到我工作的经理中。因此,切断返回控制器的跳闸,然后通过其他服务返回给其他经理。基本上我有两个经理 public class TypeCodeManag
public class TypeCodeManager : ITypeCodeManager
{
public TypeCodeManager()
{
}
public async Task<int> GetTypeCodeAsync(string typeCode, string code)
}
public class UserManager : IUserManager
{
private readonly ITypeCodeManager _typeCodeManager;
public UserManager(ITypeCodeManager typeCodeManager)
{
_typeCodeManager = typeCodeManager
}
}
公共类TypeCodeManager:ITypeCodeManager
{
公共类型代码管理器()
{
}
公共异步任务GetTypeCodeAsync(字符串类型代码,字符串代码)
}
公共类用户管理器:IUserManager
{
私有只读ITypeCodeManager\u typeCodeManager;
公共用户管理器(ITypeCodeManager typeCodeManager)
{
_typeCodeManager=typeCodeManager
}
}
这通常是一个好主意吗?我想说,通过“管理者”进入其他领域通常不是一个好主意,假设你的管理者是与持久性层对话的人。这将很快导致混淆依赖关系映射和代码
您的服务对于协调跨域关注点来说是一个更好的层,因为它们可能描述跨域工作流,并且依赖于多个管理者。我想说,如果您的管理者与持久性层对话,那么通过“管理者”跨越到其他域通常不是一个好主意。这将很快导致混淆依赖关系映射和代码
您的服务对于协调跨域关注点来说是一个更好的层,因为它们可能描述跨域工作流,并且依赖于多个管理者。从代码的角度来看,是的,这很好。从建筑的角度来看?现在,这是一个完全不同的问题,只有您和您的团队才能回答。
我想知道是否可以……
取决于您所说的OK
。从代码的角度来看,是的,这很好。从建筑的角度来看?现在,这是一个完全不同的问题,只有您和您的团队才能回答。我想知道是否可以……
取决于您所说的好
。