【发布时间】:2016-04-28 08:08:24
【问题描述】:
我正在尝试在将依赖项注入某个命名空间时有条件地绑定它。我在条件绑定中找到了一个 Ninject article,它说以下内容:
我们还可以通过提供委托来提供条件逻辑。在这种情况下,询问类的名称和命名空间。
Bind().To().When(request => request.Target.Member.Name.StartsWith("ClassName")); Bind().To().When(request => request.Target.Type.Namespace.StartsWith("NameSpace.ClassName"));
所以我尝试如下实现:
Bind<ILogger>().ToMethod(x => new Logger("commissionServiceLogger")).When(x => x.Target.Type.Namespace.StartsWith("My.App.CommissionService"));
我得到一个空引用异常,但是:
对象引用未设置为对象的实例。
知道我做错了什么吗?
【问题讨论】: