Привет, я хотел бы вызвать метод Foo после того, как StructureMap создаст экземпляр репозитория, поэтому есть метод для этого, называемый OnCreation.
x.For(typeof(IRepository<>))
.Use(typeof(Repository<>))
.OnCreation((ctx, instance) => { instance.Foo() });
Но компилятор, конечно, не может определить тип, поэтомуЯ попытался указать универсальный тип следующим образом:
x.For(typeof(IRepository<>))
.Use(typeof(Repository<>))
.OnCreation<Repository<>>((ctx, instance) => { instance.Foo() });
Это не скомпилируется, даже не будет проанализировано (недопустимый термин выражения '>).Я пытался создать объект Action самостоятельно, но безуспешно.Затем я узнал об InstanceInterceptor, поэтому я написал класс, но не могу понять, как его подключить. Должен быть метод InterceptWith, но он недоступен для ConfiguredInstance, который является типом результата не универсального метода Use.
Я знаю, что могу взломать это многими другими способами, но я хотел бы сделать это в рамках отображения StructureMap.
Пожалуйста, помогите:)