/// <summary> /// /// </summary> /// <param name="context"></param> /// <param name="configAction"></param> /// <returns></returns> public static IConventionalRegistrationContext Action(this IConventionalRegistrationContext context, Action <IConventionalConfiguration> configAction) { var config = new ConventionalConfiguration(context.Services); configAction(config); return(context); }
/// <summary> /// /// </summary> /// <param name="services"></param> /// <param name="types"></param> /// <param name="configureAction"></param> /// <returns></returns> public static IServiceCollection DoConventionalAction <TAction>(this IServiceCollection services, IEnumerable <Type> types, Action <IConventionalConfiguration> configureAction) where TAction : ConventionalActionBase { var config = new ConventionalConfiguration(services, types); configureAction(config); var action = Activator.CreateInstance(typeof(TAction), config) as TAction; action.Action(); return(services); }
public static IServiceCollection DoConventionalAction <TAction>( this IServiceCollection services, IEnumerable <Type> types, Action <IConventionalConfiguration <TAction> > configureAction) where TAction : ConventionalActionBase { var config = new ConventionalConfiguration <TAction>(services, types); configureAction(config); var action = Activator.CreateInstance( typeof(TAction), BindingFlags.Public | BindingFlags.CreateInstance | BindingFlags.Instance | BindingFlags.InvokeMethod | BindingFlags.NonPublic, null, new object[] { config }, null) as TAction; action.Action(); return(services); }