我希望当有[Inject]属性但该类型之前未绑定到ninject中时,Ninject不引发异常。只需忽略它或将其设置为null。
我在创建内核时尝试了此代码,但没有帮助:
kernel.Components.RemoveAll<IMissingBindingResolver>();
kernel.Components.Add<IMissingBindingResolver, DefaultValueBindingResolver>();
但是跑步时会抛出Ninject.ActivationException
。
答案 0 :(得分:1)
您还应该使用[Optional]
属性装饰它。
https://github.com/ninject/Ninject/blob/master/src/Ninject/Attributes/OptionalAttribute.cs