是否可以使用动态代理和windsor拦截IInvocation(如果这种情况甚至需要windsor。我使用它来配置代理生成)? 我想记录拦截已经改变了对拦截方法的调用 例如,传递的参数已更改或返回值 请注意,这仅用于调试目的。
答案 0 :(得分:0)
遵循以下代码:
public class TransactionInterceptor : IInterceptor
{
private readonly IUnitOfWork _UnitOfWork;
public TransactionInterceptor(IUnitOfWork unitOfWork)
{
_UnitOfWork = unitOfWork;
}
public void Intercept(IInvocation invocation)
{
_UnitOfWork.Begin();
try
{
invocation.Proceed();
_UnitOfWork.Commit();
}
catch (Exception)
{
_UnitOfWork.RollBack();
throw;
}
}
}
答案 1 :(得分:-2)
是的,可能,我建议您阅读this