private static void RegisterCustomMappings(ModelBuilder modelBuilder, IEnumerable <Type> typeToRegisters) { #region Variables IEnumerable <Type> customModelBuilderTypes = null; ICustomModelBuilder builder = null; #endregion Variables #region Action Body customModelBuilderTypes = typeToRegisters.Where(x => typeof(ICustomModelBuilder).IsAssignableFrom(x)); foreach (var builderType in customModelBuilderTypes) { if (builderType != null && builderType != typeof(ICustomModelBuilder)) { builder = (ICustomModelBuilder)Activator.CreateInstance(builderType); builder.Build(modelBuilder); } } #endregion Action Body #region Clear Memory modelBuilder = null; typeToRegisters = null; customModelBuilderTypes = null; builder = null; #endregion Clear Memory }
private static void RegisterCustomMappings(ModelBuilder modelBuilder, IEnumerable <Type> typeToRegisters) { IEnumerable <Type> customModelBuilderTypes = typeToRegisters.Where(x => typeof(ICustomModelBuilder).IsAssignableFrom(x)); foreach (Type builderType in customModelBuilderTypes) { if (builderType != null && builderType != typeof(ICustomModelBuilder)) { ICustomModelBuilder builder = (ICustomModelBuilder)Activator.CreateInstance(builderType); builder.Build(modelBuilder); } } }
private static void RegisterCustomMappings( this ModelBuilder builder, IEnumerable <Type> fromTypes) { IEnumerable <Type> customModelBuilderTypes = fromTypes.Where(predicate: x => x != null && typeof(ICustomModelBuilder).IsAssignableFrom(x) && x != typeof(ICustomModelBuilder)) ; foreach (Type builderType in customModelBuilderTypes) { ICustomModelBuilder customModelBuilder = (ICustomModelBuilder)Activator.CreateInstance(builderType); customModelBuilder.Build(builder); } }
public static void RegisterModelBuilders(ICustomModelBuilder builder) { customModelBuilders.Add(builder); }