В Ninject 2.2 есть ли способ добавить свойство?В библиотеке я внедряю диспетчер производительности следующим образом:
[Inject]
public IPerformanceManager PerformanceManager
{
private get; set;
}
, но во многих случаях использования этой библиотеки меня не интересует профилирование производительности, поэтому я хочу, чтобы это свойство было нулевым.Если я вообще не объявляю привязку для IPerformanceManager, я получаю следующую ошибку:
Ошибка активации IPerformanceManager Нет соответствующих привязок, и тип не является самосвязываемым.Путь активации: 5) Инъекция зависимости IPerformanceManager в свойство PerformanceManager типа PluginDomainManager и т. Д.
ОК, достаточно справедливо.Поэтому вместо этого я попытался связать его с методом, который возвращает NULL:
kernel.Bind<IPerformanceManager>().ToMethod(m => null);
Но теперь он выдает ошибку:
Ошибка активации IPerformanceManager с помощью привязки из IPerformanceManager к возвращенному поставщику методаноль.Путь активации: 5) Внедрение зависимости IPerformanceManager в свойство PerformanceManager типа PluginDomainManager и т. Д. *
То есть внедренное свойство никогда не может иметь значение NULL?Я нахожу это удивительным.Любые идеи, как сделать необязательное введенное свойство?