diff Source/Aspects/ClearCacheAspect.cs @ 0:f990fcb411a9

Копия текущей версии из github
author cin
date Thu, 27 Mar 2014 21:46:09 +0400
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Source/Aspects/ClearCacheAspect.cs	Thu Mar 27 21:46:09 2014 +0400
@@ -0,0 +1,28 @@
+using System;
+using System.Reflection;
+
+namespace BLToolkit.Aspects
+{
+	public class ClearCacheAspect
+	{
+		public static MethodInfo GetMethodInfo(
+			object caller, Type declaringType, string methodName, Type[] parameterTypes)
+		{
+			if (declaringType == null)
+				declaringType = caller.GetType();
+
+			return CacheAspect.GetMethodInfo(declaringType, methodName, parameterTypes);
+		}
+
+		public static Type GetType(object caller, Type declaringType)
+		{
+			if (declaringType == null)
+				declaringType = caller.GetType();
+
+			if (declaringType.IsAbstract)
+				declaringType = TypeBuilder.TypeFactory.GetType(declaringType);
+
+			return declaringType;
+		}
+	}
+}