Beispiel #1
0
        public void Register(ContainerBuilder builder)
        {
            builder.Register(context => RabbitMqConfig.InitReceiverBus <DenormalizerHandler>("Denormalizer.endpoint"))
            .SingleInstance()
            .As <IBusControl>()
            .As <IBus>();
            builder.RegisterType <DbContextScopeFactory>().As <IDbContextScopeFactory>();

            Container = builder.Build();
        }
Beispiel #2
0
 public void Register(ContainerBuilder builder)
 {
     builder.Register(context => RabbitMqConfig.InitReceiverBus <DenormalizerHandler>("Denormalizer.endpoint"))
     .SingleInstance()
     .As <IBusControl>()
     .As <IBus>();
     builder.RegisterType <DbContextScopeFactory>().As <IDbContextScopeFactory>();
     builder.Register(c => new RedisConnectionManager(ConfigurationManager.AppSettings["RedisUrl"], ConfigurationManager.AppSettings["redisPass"])).As <IRedisConnectionManager>();
     builder.RegisterType <RedisCache>().As <IRedisCache>();
     Container = builder.Build();
 }
Beispiel #3
0
        static void Main(string[] args)
        {
            var builder = new ContainerBuilder();

            builder.RegisterType <DbContextScopeFactory>().As <IDbContextScopeFactory>();
            builder.RegisterType <AmbientDbContextLocator>().As <IAmbientDbContextLocator>();
            builder.RegisterGeneric(typeof(EfScopeRepository <>)).As(typeof(IScopeRepository <>)).InstancePerLifetimeScope();
            var bus = RabbitMqConfig.InitReceiverBus <TeltonikaedgeHandler>("teltonika");

            builder.RegisterInstance(bus).As <IBusControl>();
            Container = builder.Build();

            Container.Resolve <IAmbientDbContextLocator>();
            bus.StartAsync();
        }
        public void Register(ContainerBuilder builder)
        {
            if (builder == null)
            {
                throw new ArgumentNullException(nameof(builder));
            }
            // registration of dependencies
            builder.RegisterType <DbContextScopeFactory>().As <IDbContextScopeFactory>();
            builder.RegisterType <AmbientDbContextLocator>().As <IAmbientDbContextLocator>();
            builder.RegisterType <ReverseGeoCodingService>().SingleInstance();

            builder.RegisterGeneric(typeof(EfScopeRepository <>)).As(typeof(IScopeRepository <>))
            .InstancePerLifetimeScope();
            builder.Register(context => RabbitMqConfig.InitReceiverBus <TeltonikaHandler>("TeltonikaHandler.endpoint"))
            .SingleInstance()
            .As <IBusControl>()
            .As <IBus>();
            Container = builder.Build();

            Container.Resolve <IAmbientDbContextLocator>();
        }
Beispiel #5
0
        protected void Application_Start()
        {
            #region add masstransit consumer

            try
            {
                RabbitMqConfig
                .InitReceiverBus <SignalRHandler>("Smartfleet.Web.endpoint")
                .StartAsync()
                .GetAwaiter();
            }
            catch (Exception e)
            {
                Trace.WriteLine(e);
                //throw;
            }
            #endregion

            AreaRegistration.RegisterAllAreas();
            GlobalConfiguration.Configure(WebApiConfig.Register);
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);
            BundleTable.EnableOptimizations = false;
            // seed user administrator and roles
            SeedInitialData();

            #region register different services and classes using autofac
#if DEBUG
            TelemetryConfiguration.Active.DisableTelemetry = true;
#endif
            var builder = new ContainerBuilder();
            builder.RegisterControllers(typeof(MvcApplication).Assembly);
            builder.RegisterAssemblyTypes(typeof(MvcApplication).Assembly)
            .AsImplementedInterfaces();

            builder.RegisterModule(new AutofacWebTypesModule());
            //builder.RegisterApiControllers(Assembly.GetExecutingAssembly());
            builder.RegisterType <SmartFleetObjectContext>().As <SmartFleetObjectContext>();

            builder.RegisterType <UserStore <IdentityUser> >().As <IUserStore <IdentityUser> >();
            builder.RegisterType <RoleStore <IdentityRole> >().As <IRoleStore <IdentityRole, string> >();
            builder.RegisterType <UserManager <IdentityUser> >();
            builder.RegisterType <AuthenticationService>().As <IAuthenticationService>();
            builder.RegisterGeneric(typeof(EfRepository <>)).As(typeof(IRepository <>)).InstancePerLifetimeScope();
            builder.RegisterType <DbContextScopeFactory>().As <IDbContextScopeFactory>();
            builder.RegisterType <ReverseGeoCodingService>().As <ReverseGeoCodingService>();
            builder.RegisterType <VehicleService>().As <IVehicleService>();
            builder.RegisterType <CustomerService>().As <ICustomerService>();

            builder.RegisterType <PositionService>().As <IPositionService>();
            builder.RegisterType <CustomerService>().As <ICustomerService>();
            builder.RegisterType <PdfService>().As <IPdfService>();
            #endregion

            #region automapper

            var mapperConfiguration = new MapperConfiguration(cfg =>
            {
                cfg.AddProfile(new SmartFleetAdminMappings());
            });
            var mapper = mapperConfiguration.CreateMapper();
            builder.RegisterInstance(mapper).As <IMapper>();
            SignalRHubManager.Mapper = mapper;
            var queryBuilder = new DataTablesLinqQueryBulider();
            builder.RegisterInstance(queryBuilder).As <DataTablesLinqQueryBulider>();
            #endregion

            var container = builder.Build();
            var path      = Server.MapPath("/") + @"bin\microservices";
            MicroServicesLoader.Loader(path);

            //    container.Resolve<IAmbientDbContextLocator>();
            DependencyResolver.SetResolver(new AutofacDependencyResolver(container));
            // GlobalConfiguration.Configuration.DependencyResolver = new AutofacWebApiDependencyResolver((IContainer)container);
        }
Beispiel #6
0
        protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();
            GlobalConfiguration.Configure(WebApiConfig.Register);
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);
            BundleTable.EnableOptimizations = false;
            // HibernatingRhinos.Profiler.Appender.EntityFramework.EntityFrameworkProfiler.Initialize();

            // seeds init data
            SeedInitData.SeedInitialData();

            #region register different services and classes using autofac
#if DEBUG
            TelemetryConfiguration.Active.DisableTelemetry = true;
#endif
            var builder = new ContainerBuilder();
            builder.RegisterControllers(typeof(MvcApplication).Assembly);
            builder.RegisterAssemblyTypes(typeof(MvcApplication).Assembly)
            .AsImplementedInterfaces();

            builder.RegisterModule(new AutofacWebTypesModule());
            //builder.RegisterApiControllers(Assembly.GetExecutingAssembly());
            builder.RegisterType <SmartFleetObjectContext>().As <SmartFleetObjectContext>();

            builder.RegisterType <UserStore <IdentityUser> >().As <IUserStore <IdentityUser> >();
            builder.RegisterType <RoleStore <IdentityRole> >().As <IRoleStore <IdentityRole, string> >();
            builder.RegisterType <UserManager <IdentityUser> >();

            builder.RegisterType <AuthenticationService>().As <IAuthenticationService>();
            builder.RegisterGeneric(typeof(EfRepository <>)).As(typeof(IRepository <>)).InstancePerLifetimeScope();
            builder.RegisterType <DbContextScopeFactory>().As <IDbContextScopeFactory>();
            builder.RegisterType <ReverseGeoCodingService>().As <ReverseGeoCodingService>();
            builder.RegisterType <VehicleService>().As <IVehicleService>();
            builder.RegisterType <CustomerService>().As <ICustomerService>();

            builder.RegisterType <PositionService>().As <IPositionService>();
            builder.RegisterType <CustomerService>().As <ICustomerService>();
            builder.RegisterType <PdfService>().As <IPdfService>();
            #endregion

            #region automapper

            var mapperConfiguration = new MapperConfiguration(cfg =>
            {
                cfg.AddProfile(new SmartFleetAdminMappings());
                cfg.AddProfile(new CustomerDomainMapping());
                cfg.AddProfile(new MobileUnitDomainMapping());
            });
            var mapper = mapperConfiguration.CreateMapper();
            builder.RegisterInstance(mapper).As <IMapper>();
            SignalRHubManager.Mapper = mapper;
            builder
            .RegisterType <Mediator>()
            .As <IMediator>()
            .InstancePerLifetimeScope();

            builder.Register <ServiceFactory>(context =>
            {
                var c = context.Resolve <IComponentContext>();
                return(t => c.Resolve(t));
            });
            RegisterDomains(builder);

            var queryBuilder = new DataTablesLinqQueryBulider();
            builder.RegisterInstance(queryBuilder).As <DataTablesLinqQueryBulider>();
            #endregion
            #region add masstransit consumer
            builder.Register(context => RabbitMqConfig.InitReceiverBus <SignalRHandler>("Smartfleet.Web.endpoint"))
            .SingleInstance()
            .As <IBusControl>()
            .As <IBus>();
            #endregion

            #region register redis cache

            builder.Register(c => new RedisConnectionManager(ConfigurationManager.AppSettings["RedisUrl"], ConfigurationManager.AppSettings["redisPass"])).As <IRedisConnectionManager>();
            builder.RegisterType <RedisCache>().As <IRedisCache>();

            #endregion
            var container = builder.Build();
            container.Resolve <IBusControl>().StartAsync();

            DependencyResolver.SetResolver(new AutofacDependencyResolver(container));
        }