/// <summary> /// Looks through this assembly for any IOverride classes. If found, it creates an instance /// of each and invokes the Override(mapper) method, accordingly. /// </summary> private static void AddConventionOverrides(ConventionModelMapper mapper) { Type overrideType = typeof(IOverride); List <Type> types = typeof(IOverride).Assembly.GetTypes() .Where(t => overrideType.IsAssignableFrom(t) && t != typeof(IOverride)) .ToList(); types.ForEach(t => { IOverride conventionOverride = Activator.CreateInstance(t) as IOverride; conventionOverride.Override(mapper); }); }
/// <summary> /// Track that an element was affected by a specific override. /// </summary> public static void AddOverrideIdentity(this Element element, IOverride overrideObject) { AddOverrideIdentity(element, overrideObject.GetName(), overrideObject.Id, overrideObject.GetIdentity()); }