public void Intercept(IInvocation invocation)
{
var disableFiltersAttr = GetDisableFiltersAttributeOrNull(invocation.MethodInvocationTarget);
if (disableFiltersAttr != null)
{
List<string> filterNames= disableFiltersAttr.FilterNames.Select(filterName => filterName.ToString()).ToList();
_unitOfWork.DisableFilters(filterNames.ToArray());
}
//MethodInfo method = invocation.Method;
invocation.Proceed();
//if (Attribute.IsDefined(method, typeof (NoUnitOfWorkAttribute)))
//{
// return;
//}
//if (invocation.Method.IsDefined(typeof(NoUnitOfWorkAttribute), true))
//{
// return;
//}
var unitOfWorkAttr = GetNoUnitOfWorkAttributeOrNull(invocation.MethodInvocationTarget);
if (unitOfWorkAttr != null)
{
return;
}
_unitOfWork.Commit();
}