Я знаю, что с Ninject 1 можно было указать конкретные экземпляры в зависимости от имени параметра.Ninject v2 + injection зависит от имени параметра
например общественное SomeClass (ISomething слева, ISomething справа) {}
разрешило бы ISomething слева ISomething по умолчанию, но ISomething право на другое связывание.
Как это сделать с помощью Ninject 2+?
Примечание: Я не хочу использовать [Именованный («XZ»)], потому что это заставило бы меня сделать главную dll моего приложения зависимой от Ninject. Прямо сейчас у меня есть отдельная DLL CompositionRoot, которая зависит от Ninject, и ничего больше: моя главная dll может использоваться без Ninject. Я хотел бы сохранить его таким образом.
Редактировать: Я обновил пример использования влево/вправо вместо простого/сложного после первого ответа. Я не хочу жестко указывать эту зависимость в моей структуре наследования.
Потому что я не хочу, чтобы изменить свою структуру наследования класса только для удовлетворения Ninject. Может быть, мой пример был плохим, это может быть также ISomething left, ISomething right; Я не хочу хардкор ISomethingRight ... – Wilbert