public static IApplicationBuilder UseHighwayRestArea <TContext>(this IApplicationBuilder app, Action <RestAreaOptionsBuilder <TContext> > configure)
            where TContext : UnitOfWork
        {
            var contextOptions = app.ApplicationServices.GetService(typeof(DbContextOptions <TContext>)) as DbContextOptions <TContext>;
            var model          = contextOptions.GetExtension <CoreOptionsExtension>().Model;
            var builder        = new RestAreaOptionsBuilder <TContext>(model);

            configure(builder);
            var options = builder.Build();


            var routeBuilder = new RouteBuilder(app, new RouteHandler(options.Handler));

            foreach (var entity in options.Entities)
            {
                var root = options.UrlPrefix;
                CreateRoutes(routeBuilder, entity, root);
            }


            var routes = routeBuilder.Build();

            app.UseRouter(routes);
            return(app);
        }
 public void Setup()
 {
     target = new RestAreaOptionsBuilder <UnitOfWork>(uow.Model);
 }