저는 Castle Windsor를 배우면서 AOP를 사용하여 몇 가지 문제를 해결하려고 시도했으며이를 차단하기 위해 차단 기능을 사용하려고했습니다.Castle Windsor 요격으로 구성 요소 대신 등록 된 클래스에
다음을 수행하여 단일 구성 요소로 작동시키는 방법을 알아 냈습니다. 클래스를 등록 할 때 내가 여기
container.Register(Classes.FromThisAssembly()
.BasedOn<IController>()
.LifestyleTransient());
했을 인터셉터이에 사용할 수있을 나타나지 않는
container.Register(Component.For<IInterceptor>()
.ImplementedBy<BankServiceLogger>()
.Named("BankServiceInteceptor"));
container.Register(Component.For<IBankService>()
.ImplementedBy<BankService>()
.Interceptors(InterceptorReference.ForKey("BankServiceInteceptor")).Anywhere
.LifestyleTransient());
내 문제는 컨트롤러로입니다.
여러 클래스를 등록 할 때 가로채는 방법이 있습니까? 아니면이를 수행하기 위해 각 구성 요소를 개별적으로 등록해야합니까?
BasedOnDescriptor
에
Configure
방법은 그러나 난 그냥
Configure
는 당신이
InterceptorGroup
에
Anywhere
속성을 호출 할 수없는
Action<ComponentRegistration>
을하도록 설계되어 있기 때문에 실현이 능력 (뿐만 아니라 많은 다른 것들을 구성 할 수있는 기능)을 제공
아직 AOP가 죽거나 잊지 않았습니까? – paulsm4
@ paulsm4 예, Castle AOP는 약 5 년 전에 사망했습니다. 그러나이 질문은 Castle DynamicPro의 AOP 기능을 내부적으로 사용하는 Castle Windsor의 AOP 기능에 대한 것입니다. –