Mugen Injection [Передача параметров]
Все методы для активации компонентов принимают массив параметров (params IInjectionParameter[]). Параметры автоматически отображаются в свойства, аргументы конструктора или метода, при условии, что они были зарегистрированы с использованием рефлексии. Пример того, как параметр отобразится в аргумент конструктора используя имя аргумента конструктора:
public class Alpha { public Alpha(string test) { } } var alpha = _injector.Get<Alpha>(new ConstructorParameter("test", "test")); var enumerable = _injector.GetAll<Alpha>(new ConstructorParameter("test", "test"));
Доступные типы параметров
Все параметры реализуют интерфейс IInjectionParameter и вы легко можете расширить этот список, добавив свою реализацию.MugenInjection предлагает несколько различных параметров:
- ConstructorParameter - представляет аргумент конструктора.
- PropertyParameter - представляет значение свойства.
- MethodParameter - представляет аргумент метода.
- InjectionParameter - базовый класс для параметров.
Стратегия выбора параметра для InjectionParameter полностью зависит от вас, при создании параметра вы передаете делегат, который отвечает за условие выбора.