예제 #1
0
        public void Initialise(HttpConfiguration config)
        {
            var builder = new ContainerBuilder();

            builder.RegisterType(typeof(UnitOfWork)).As(typeof(IUnitOfWork)).InstancePerLifetimeScope();
            builder.RegisterFilterProvider();

            const string nameOrConnectionString = "name=FamilyTreeDbConnection";

            builder.Register <IDbContext>(b =>
            {
                var logger  = b.ResolveOptional <ILogger>();
                var context = new FamilyTreeDbContext(nameOrConnectionString, logger);
                return(context);
            }).InstancePerLifetimeScope();

            builder.Register(b => NLogLogger.Instance).SingleInstance();

            builder.RegisterModule <RepositoryCapsuleModule>();
            builder.RegisterModule <ServiceCapsuleModule>();
            builder.RegisterModule <ControllerCapsuleModule>();

            var container = builder.Build();

            DependencyResolver.SetResolver(new AutofacDependencyResolver(container));

            var resolver = new AutofacWebApiDependencyResolver(container);

            config.DependencyResolver = resolver;
        }
예제 #2
0
 public CollisionRelationshipService(FamilyTreeDbContext _context) : base(_context)
 {
 }
예제 #3
0
 public FamilyTreeCollisionService(FamilyTreeDbContext _context) : base(_context)
 {
 }
예제 #4
0
 public ServiceDependencies(FamilyTreeDbContext context, IServiceProvider serviceProvider)
 {
     _context        = context;
     ServiceProvider = serviceProvider;
 }
예제 #5
0
 public PersonService(FamilyTreeDbContext dbContext,
                      ILogger <PersonService> logger)
 {
     _dbContext = dbContext;
     _logger    = logger;
 }
 protected BaseRelationshipService(FamilyTreeDbContext context)
 {
     _context = context;
 }
예제 #7
0
 public FamilyTreePersonService(FamilyTreeDbContext _context) : base(_context)
 {
 }