public static LimitBase[] GetLimitArrayInstanceByName(SearchTerm[] searchTerm) { Assembly ass = Assembly.GetCallingAssembly(); List <LimitBase> result = new List <LimitBase>(); foreach (var i in ass.GetTypes()) { if (i.IsSubclassOf(typeof(LimitBase)) && i.GetCustomAttribute <SearchTerm>() != null) { LimitBase buffer = (LimitBase)ass.CreateInstance(i.FullName); result.Add(buffer); } } return(result.ToArray()); }
public static LimitBase[] GetAllLimitInstance() { Assembly ass = Assembly.GetCallingAssembly(); List <LimitBase> result = new List <LimitBase>(); foreach (var i in ass.GetTypes()) { if (i.IsSubclassOf(typeof(LimitBase))) { LimitBase buffer = (LimitBase)ass.CreateInstance(i.FullName); result.Add(buffer); } } return(result.ToArray()); }
public static LimitBase GetLimitInstanceByName(SearchTerm searchTerm) { Assembly ass = Assembly.GetCallingAssembly(); foreach (var i in ass.GetTypes()) { if (i.IsSubclassOf(typeof(LimitBase)) && i.GetCustomAttribute <SearchTerm>() != null) { if (i.GetCustomAttribute <SearchTerm>() == searchTerm) { LimitBase buffer = (LimitBase)ass.CreateInstance(i.FullName); return(buffer); } } } return(null); }