这个问题之前可能有人问过,但我在搜索时没有找到任何东西。
使用依赖注入(inject)时,您通常如何处理列表、网络凭据等类型。
目前在我的一个服务构造函数中我有:
_itemsCheckedForRelations = new List<Guid>();
_reportManagementService.Credentials = new NetworkCredential([...]);
你会把它们重构到自定义工厂类/接口(interface)中并注入(inject)它们,还是像我在这里做的那样?
我一直不太确定如何处理这些类型的对象创建。
最佳答案
您可以轻松替换 List<Guid>
与 IList<Guid>
或 ICollection<Guid>
- 甚至 IEnumerable<Guid>
如果您只需要阅读列表。
对于尚未实现接口(interface)或具有虚拟成员的其他 BCL 类型,您需要自己提取接口(interface)。但是,在这样做时,您应该注意抽象泄漏。
关于c# - 内置类型的依赖注入(inject),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7203155/