0

是否可以使用动态代理和 windsor 拦截 IInvocation(如果这种情况甚至需要 windsor。我正在使用它来配置代理生成)?
我想记录一个拦截已经改变了对被拦截方法的调用。
例如传递的参数被改变或返回值。
请注意,这仅用于调试目的。

4

2 回答 2

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;
        }
    }
}
于 2018-09-08T08:06:58.267 回答
-2

是的,有可能,我建议阅读此内容

于 2011-05-08T13:02:45.190 回答