public void Intercept(IInvocation invocation) { var attributeHelper = new AttributeHelper(); var methodHaveUnitOfWorkAttribute = attributeHelper.MethodDefinedAttribute<UnitOfWorkAttribute>(invocation); if (!methodHaveUnitOfWorkAttribute) { invocation.Proceed(); return; } _unitOfWork.BeginTransaction(); invocation.Proceed(); _unitOfWork.Commit(); }