public static IApplicationBuilder UserDbRESTFul(this IApplicationBuilder app, IApiAuthorizeFilter authorizeFilter, bool apiOnly = false, IResponseResultResolver responseResultResolver = null) { var loggerFactory = app.ApplicationServices.GetRequiredService <ILoggerFactory>(); var logger = loggerFactory.CreateLogger("DbRESTFulAPI"); LoggerManager.Use(logger); var apiFilter = new ConfiguredApiFilter() { ApiAuthorizeFilter = authorizeFilter }; CacheProviderFactory.Init(); apiFilter.ResponseResultResolver = responseResultResolver == null ? new DefaultResponseResultResolver() : responseResultResolver; app.UseMiddleware <DbRESTFulApiMiddleware>(apiFilter, apiOnly); return(app); }
public DbRESTFulApiMiddleware(RequestDelegate next, ConfiguredApiFilter filter, bool apiOnly) { this.next = next; this.filter = filter; this.apiOnly = apiOnly; }