コード例 #1
0
ファイル: IocConfig.cs プロジェクト: benthcode/Annapolis.Net
 public static void Register(IUnityContainer container)
 {
     container.BindInRequestScope<IAccountDriver, AccountDriver>();
     container.BindInRequestScope<ITopicDriver, TopicDriver>();
     container.BindInRequestScope<ICommentDriver, CommentDriver>();
     container.BindInRequestScope<ITagDriver, TagDriver>();
     container.BindInRequestScope<IThreadDriver, ThreadDriver>();
 }
コード例 #2
0
ファイル: UnityHelper.cs プロジェクト: EvansCoding/OriginV2
        public static void InitialiseUnityContainer()
        {
            Container = new UnityContainer();
            DependencyResolver.SetResolver(new UnityDependencyResolver(Container));

            Container.BindInRequestScope <IConfigService, ConfigService>();
            Container.BindInRequestScope <ICacheService, CacheService>();
        }
コード例 #3
0
 public static void RegisterTypes(IUnityContainer container)
 {
     container.BindInRequestScope <IUnitofWork, UnitofWork>();
     container.BindInRequestScope <IUserServices, UserServices>();
     container.BindInRequestScope <IGenericRepository <User>, IGenericRepository <User> >();
     container.BindInRequestScope <IGenericRepository <Post>, IGenericRepository <Post> >();
     container.BindInRequestScope <IGenericRepository <Category>, IGenericRepository <Category> >();
 }
コード例 #4
0
ファイル: IocConfig.cs プロジェクト: benthcode/Annapolis.Net
 public static void Register(IUnityContainer container)
 {
     container.BindInRequestScope <IAccountDriver, AccountDriver>();
     container.BindInRequestScope <ITopicDriver, TopicDriver>();
     container.BindInRequestScope <ICommentDriver, CommentDriver>();
     container.BindInRequestScope <ITagDriver, TagDriver>();
     container.BindInRequestScope <IThreadDriver, ThreadDriver>();
 }
コード例 #5
0
ファイル: UnityHelper.cs プロジェクト: Jashinck/mvcforum
        public static void InitialiseUnityContainer()
        {
            Container = new UnityContainer();
            DependencyResolver.SetResolver(new UnityDependencyResolver(Container));

            // Bit annoying having just this here but we need this early in the startup for seed method
            Container.BindInRequestScope <IConfigService, ConfigService>();
            Container.BindInRequestScope <ICacheService, CacheService>();
        }
コード例 #6
0
        public static void RegisterTypes(IUnityContainer container)
        {
            container.RegisterType <IGenericRepository <Haber>, GenericRepository <Haber> >();
            container.RegisterType <IGenericRepository <Etiket>, GenericRepository <Etiket> >();
            container.BindInRequestScope <IGenericRepository <Kategori>, GenericRepository <Kategori> >();
            container.RegisterType <IGenericRepository <Resim>, GenericRepository <Resim> >();
            container.RegisterType <IGenericRepository <Galeri>, GenericRepository <Galeri> >();

            var Constructor = new InjectionConstructor(new ApplicationDbContext());

            container.RegisterType <ApplicationSignInManager>();
            container.RegisterType <ApplicationUserRole>();
            container.RegisterType <ApplicationUserClaim>();
            container.RegisterType <ApplicationUserLogin>();
            container.RegisterType <ApplicationUserStore>();
            container.RegisterType <ApplicationUserManager>();
            container.RegisterType <ApplicationRoleManager>();
            container.RegisterType <ApplicationRoleStore>();


            container.RegisterType <DbContext, ApplicationDbContext>();
            container.RegisterType <UserManager <ApplicationUser> >(new HierarchicalLifetimeManager());
            container.RegisterType <IUserStore <ApplicationUser>, ApplicationUserStore>(Constructor);
            container.RegisterType <RoleManager <ApplicationRole> >(new HierarchicalLifetimeManager());
            container.RegisterType <IRoleStore <ApplicationRole>, ApplicationRoleStore>(Constructor);

            container.RegisterType <IdentityFactoryOptions <ApplicationUserManager> >(new InjectionFactory(x =>
                                                                                                           new IdentityFactoryOptions <ApplicationUserManager>
            {
                DataProtectionProvider = new Microsoft.Owin.Security.DataProtection.DpapiDataProtectionProvider("ApplicationName")
            }));

            container.RegisterType <IAuthenticationManager>(
                new InjectionFactory(c => HttpContext.Current.GetOwinContext().Authentication));


            container.BindInRequestScope <IUnitOfWork, UnitOfWork>();

            container.RegisterType <IHaberService, HaberService>();
            container.RegisterType <IEtiketService, EtiketService>();
            container.RegisterType <IKategoriService, KategoriService>();
            container.RegisterType <IResimService, ResimService>();
            container.RegisterType <IGaleriService, GaleriService>();
        }
コード例 #7
0
 /// <summary>
 ///     Inject
 /// </summary>
 /// <returns></returns>
 public static void BuildUnityContainer()
 {
     Container.BindInRequestScope <IDataContext, DataContext>();
     Container.BindInRequestScope <IGuestService, GuestService>();
     Container.BindInRequestScope <IPermissionService, PermissionService>();
     Container.BindInRequestScope <ITagService, TagService>();
     Container.BindInRequestScope <IProjectService, ProjectService>();
     Container.BindInRequestScope <IReportService, ReportService>();
     Container.BindInRequestScope <ITimeStartService, TimeStartService>();
 }
コード例 #8
0
ファイル: UnityHelper.cs プロジェクト: EvansCoding/OriginV2
 /// <summary>
 ///     Inject
 /// </summary>
 /// <returns></returns>
 public static void BuildUnityContainer()
 {
     Container.BindInRequestScope <IDataContext, DataContext>();
     Container.BindInRequestScope <IAccountService, AccountService>();
     Container.BindInRequestScope <IUserService, UserService>();
     Container.BindInRequestScope <ISupplierService, SupplierService>();
     Container.BindInRequestScope <IProductViewService, ProductViewService>();
     Container.BindInRequestScope <IProductService, ProductService>();
 }
コード例 #9
0
 public static void RegisterTypes(IUnityContainer container)
 {
     container.BindInRequestScope <IUnitofWork, UnitofWork>();
     container.BindInRequestScope <IUserService, UserService>();
     container.BindInRequestScope <IBlokService, BlokService>();
     container.BindInRequestScope <ITipService, TipService>();
     container.BindInRequestScope <IPersonelService, PersonelService>();
     container.BindInRequestScope <IAnasayacService, AnasayacService>();
     container.BindInRequestScope <ISayacTipleriService, SayacTipleriService>();
     container.BindInRequestScope <IAnaSayacOrtakDagitimService, AnaSayacOrtakDagitimService>();
     container.BindInRequestScope <IBagimsizBolumlerService, BagimsizBolumlerService>();
     container.BindInRequestScope <IBagimsizSayacService, BagimsizSayacService>();
     container.BindInRequestScope <IKisilerService, KisilerService>();
     container.BindInRequestScope <IBorclandirmaService, BorclandirmaService>();
     container.BindInRequestScope <IKasaService, KasaService>();
     container.BindInRequestScope <IBankaService, BankaService>();
     container.BindInRequestScope <IFirmaService, FirmaService>();
     container.BindInRequestScope <ITopluBorclandirService, TopluBorclandirService>();
     container.BindInRequestScope <IAidatGunService, AidatGunService>();
     container.BindInRequestScope <IVadeGunSayisiService, VadeGunSayisiService>();
     container.BindInRequestScope <IRaporlarService, RaporlarService>();
     container.BindInRequestScope <IBorcTipleri, BorcTipleriService>();
     container.BindInRequestScope <ISmsService, SmsService>();
     container.BindInRequestScope <IMuhtelifBasliklarService, MuhtelifBasliklarService>();
     container.BindInRequestScope <IMuhtelifIslemlerService, MuhtelifIslemlerService>();
     container.BindInRequestScope <IDosyaService, DosyaService>();
 }
コード例 #10
0
        /// <summary>
        /// Registers the type mappings with the Unity container.
        /// </summary>
        /// <param name="container">The unity container to configure.</param>
        /// <remarks>
        /// There is no need to register concrete types such as controllers or
        /// API controllers (unless you want to change the defaults), as Unity
        /// allows resolving a concrete type even if it was not previously
        /// registered.
        /// </remarks>
        public static void RegisterTypes(IUnityContainer container)
        {
            // NOTE: To load from web.config uncomment the line below.
            // Make sure to add a Unity.Configuration to the using statements.
            // container.LoadConfiguration();

            // TODO: Register your type's mappings here.
            // container.RegisterType<IProductRepository, ProductRepository>();

            // register all your components with the container here
            // it is NOT necessary to register your controllers

            container.BindInRequestScope <WebMvcContext>();
            container.BindInRequestScope <IUnitOfWorkManager, UnitOfWorkManager>();

            //Bind the various domain model services and repositories that e.g. our controllers require
            container.BindInRequestScope <LoggingService>();
            container.BindInRequestScope <CacheService>();
            container.BindInRequestScope <MembershipService>();
            container.BindInRequestScope <SettingsService>();
            container.BindInRequestScope <ConfigService>();
            container.BindInRequestScope <LocalizationService>();
            container.BindInRequestScope <CategoryService>();
            container.BindInRequestScope <TopicService>();
            container.BindInRequestScope <PostSevice>();
            container.BindInRequestScope <ProductPostSevice>();
            container.BindInRequestScope <RoleSevice>();
            container.BindInRequestScope <PermissionService>();
            container.BindInRequestScope <ContactService>();
            container.BindInRequestScope <BookingSevice>();
            container.BindInRequestScope <TypeRoomSevice>();
            container.BindInRequestScope <ProductSevice>();
            container.BindInRequestScope <EmployeesService>();
            container.BindInRequestScope <EmployeesRoleService>();
            container.BindInRequestScope <ShoppingCartService>();
            container.BindInRequestScope <ShoppingCartProductService>();
            container.BindInRequestScope <MenuService>();
            container.BindInRequestScope <CarouselService>();
            container.BindInRequestScope <Login>();
            container.BindInRequestScope <RequestHelpers>();
        }
コード例 #11
0
 /// <summary>
 ///     Inject
 /// </summary>
 /// <returns></returns>
 public static void BuildUnityContainer()
 {
     Container.BindInRequestScope <IDataContext, DataContext>();
     Container.BindInRequestScope <IBannerService, BannerService>();
     Container.BindInRequestScope <IStickyService, StickyService>();
     Container.BindInRequestScope <IConfirgurationService, ConfirgurationService>();
     Container.BindInRequestScope <IContactService, ContactService>();
     Container.BindInRequestScope <ILecturerService, LecturerService>();
     Container.BindInRequestScope <IAccountService, AccountService>();
     Container.BindInRequestScope <IRoleService, RoleService>();
     Container.BindInRequestScope <INewsService, NewsService>();
     Container.BindInRequestScope <IEventsService, EventsService>();
     Container.BindInRequestScope <IGraduationService, GraduationService>();
 }
コード例 #12
0
ファイル: UnityConfig.cs プロジェクト: vvash/NewsSite
        public static void RegisterTypes(IUnityContainer container)
        {
            container.BindInRequestScope <IGenericRepository <User>, GenericRepository <User> >();
            container.BindInRequestScope <IGenericRepository <Role>, GenericRepository <Role> >();
            container.BindInRequestScope <IGenericRepository <Category>, GenericRepository <Category> >();
            container.BindInRequestScope <IGenericRepository <Tag>, GenericRepository <Tag> >();
            container.BindInRequestScope <IGenericRepository <PictureGalery>, GenericRepository <PictureGalery> >();
            container.BindInRequestScope <IGenericRepository <Post>, GenericRepository <Post> >();
            container.BindInRequestScope <IGenericRepository <PostPosition>, GenericRepository <PostPosition> >();

            container.BindInRequestScope <IUnitOfWork, UnitOfWork>();

            container.BindInRequestScope <IMembershipService, MembershipService>();
            container.BindInRequestScope <ICategoryService, CategoryService>();
            container.BindInRequestScope <ITagService, TagService>();
            container.BindInRequestScope <IPictureGaleryService, PictureGaleryService>();
            container.BindInRequestScope <IPostService, PostService>();
        }
コード例 #13
0
        /// <summary>
        ///		Registers dependencies in the supplied container.
        /// </summary>
        /// <param name="container">Instance of the container to populate.</param>
        private static void RegisterDependencies(IUnityContainer container)
        {
            container.BindInRequestScope <IUserService, UserService>();

            container.BindInRequestScope <IUserRepository, UserRepository>();
        }
コード例 #14
0
ファイル: UnityConfig.cs プロジェクト: egehangngrr/ASP-.NET
 public static void RegisterTypes(IUnityContainer container)
 {
     container.BindInRequestScope <IUnitofWork, UnitofWork>();
     /// <summary>
     /// Schema : common
     /// </summary>
     container.BindInRequestScope <IGenericRepository <Lookup>, GenericRepository <Lookup> >();
     container.BindInRequestScope <IGenericRepository <LookupList>, GenericRepository <LookupList> >();
     container.BindInRequestScope <IGenericRepository <Parameters>, GenericRepository <Parameters> >();
     container.BindInRequestScope <IGenericRepository <Person>, GenericRepository <Person> >();
     container.BindInRequestScope <IGenericRepository <Unit>, GenericRepository <Unit> >();
     /// <summary>
     /// Schema : file
     /// </summary>
     container.BindInRequestScope <IGenericRepository <Media>, GenericRepository <Media> >();
     /// <summary>
     /// Schema : log
     /// </summary>
     container.BindInRequestScope <IGenericRepository <ExceptionLog>, GenericRepository <ExceptionLog> >();
     container.BindInRequestScope <IGenericRepository <RequestLog>, GenericRepository <RequestLog> >();
     container.BindInRequestScope <IGenericRepository <TempRequestLog>, GenericRepository <TempRequestLog> >();
     /// <summary>
     /// Schema : work
     /// </summary>
     container.BindInRequestScope <IGenericRepository <Comment>, GenericRepository <Comment> >();
     container.BindInRequestScope <IGenericRepository <Project>, GenericRepository <Project> >();
     container.BindInRequestScope <IGenericRepository <Task>, GenericRepository <Task> >();
     container.BindInRequestScope <IGenericRepository <TaskHistory>, GenericRepository <TaskHistory> >();
     container.BindInRequestScope <IGenericRepository <TaskMedia>, GenericRepository <TaskMedia> >();
     /// <summary>
     /// Services
     /// </summary>
     container.BindInRequestScope <IPersonService, PersonService>();
     container.BindInRequestScope <ILogService, LogService>();
     container.BindInRequestScope <IUtilityService, UtilityService>();
     container.BindInRequestScope <IMediaService, MediaService>();
     container.BindInRequestScope <IWorkService, WorkService>();
 }
コード例 #15
0
ファイル: UnityHelper.cs プロジェクト: Jashinck/mvcforum
        /// <summary>
        ///     Inject
        /// </summary>
        /// <returns></returns>
        public static void BuildUnityContainer()
        {
            // register all your components with the container here
            // it is NOT necessary to register your controllers

            // Database context, one per request, ensure it is disposed
            Container.BindInRequestScope <IMvcForumContext, MvcForumContext>();

            //Bind the various domain model services and repositories that e.g. our controllers require
            Container.BindInRequestScope <IRoleService, RoleService>();
            Container.BindInRequestScope <ICategoryService, CategoryService>();
            Container.BindInRequestScope <IMembershipService, MembershipService>();
            Container.BindInRequestScope <IPermissionService, PermissionService>();
            Container.BindInRequestScope <ISettingsService, SettingsService>();
            Container.BindInRequestScope <ITopicService, TopicService>();
            Container.BindInRequestScope <ITopicTagService, TopicTagService>();
            Container.BindInRequestScope <IPostService, PostService>();
            Container.BindInRequestScope <ILocalizationService, LocalizationService>();
            Container.BindInRequestScope <IVoteService, VoteService>();
            Container.BindInRequestScope <IBadgeService, BadgeService>();
            Container.BindInRequestScope <IMembershipUserPointsService, MembershipUserPointsService>();
            Container.BindInRequestScope <ICategoryPermissionForRoleService, CategoryPermissionForRoleService>();
            Container.BindInRequestScope <ICategoryNotificationService, CategoryNotificationService>();
            Container.BindInRequestScope <ITopicNotificationService, TopicNotificationService>();
            Container.BindInRequestScope <IPrivateMessageService, PrivateMessageService>();
            Container.BindInRequestScope <ILoggingService, LoggingService>();
            Container.BindInRequestScope <IEmailService, EmailService>();
            Container.BindInRequestScope <IReportService, ReportService>();
            Container.BindInRequestScope <IActivityService, ActivityService>();
            Container.BindInRequestScope <IPollService, PollService>();
            Container.BindInRequestScope <IPollVoteService, PollVoteService>();
            Container.BindInRequestScope <IPollAnswerService, PollAnswerService>();
            Container.BindInRequestScope <IBannedEmailService, BannedEmailService>();
            Container.BindInRequestScope <IBannedWordService, BannedWordService>();
            Container.BindInRequestScope <IUploadedFileService, UploadedFileService>();
            Container.BindInRequestScope <IFavouriteService, FavouriteService>();
            Container.BindInRequestScope <IGlobalPermissionForRoleService, GlobalPermissionForRoleService>();
            Container.BindInRequestScope <ITagNotificationService, TagNotificationService>();
            Container.BindInRequestScope <IBlockService, BlockService>();
            Container.BindInRequestScope <IPostEditService, PostEditService>();
            Container.BindInRequestScope <IAssemblyProvider, AssemblyProvider>();
        }
コード例 #16
0
        public static IUnityContainer Build()
        {
            container = new UnityContainer();

            container.BindInRequestScope <IUnitOfWorkManager, UnitOfWorkManager>();
            container.BindInRequestScope <IAnnapolisDbContext, AnnapolisDbContext>();

            #region Repository

            //Setting
            container.BindInRequestScope <IRepository <Setting>, Repository <Setting> >();

            //Resource
            container.BindInRequestScope <IRepository <LocaleLanguage>, Repository <LocaleLanguage> >();
            container.BindInRequestScope <IRepository <LocaleResourceKey>, Repository <LocaleResourceKey> >();
            container.BindInRequestScope <IRepository <LocaleResourceValue>, Repository <LocaleResourceValue> >();

            //Membership
            container.BindInRequestScope <IRepository <MemberUser>, Repository <MemberUser> >();
            container.BindInRequestScope <IRepository <MemberRole>, Repository <MemberRole> >();

            //Content
            container.BindInRequestScope <IRepository <ContentComment>, Repository <ContentComment> >();
            container.BindInRequestScope <IRepository <ContentTopic>, Repository <ContentTopic> >();
            container.BindInRequestScope <IRepository <ContentTagCategory>, Repository <ContentTagCategory> >();
            container.BindInRequestScope <IRepository <ContentTag>, Repository <ContentTag> >();
            container.BindInRequestScope <IRepository <ContentVote>, Repository <ContentVote> >();
            container.BindInRequestScope <IRepository <ContentThread>, Repository <ContentThread> >();
            container.BindInRequestScope <IRepository <ContentBannedWord>, Repository <ContentBannedWord> >();

            //File
            container.BindInRequestScope <IRepository <UploadFileCategory>, Repository <UploadFileCategory> >();
            container.BindInRequestScope <IRepository <UploadFile>, Repository <UploadFile> >();

            //Permission
            container.BindInRequestScope <IRepository <Permission>, Repository <Permission> >();
            container.BindInRequestScope <IRepository <PermissionOnThread>, Repository <PermissionOnThread> >();

            #endregion

            #region Service

            container.BindInRequestScope <ICacheWork, CacheWork>();
            container.BindInRequestScope <ICryptoWork, CryptoWork>();
            container.BindInRequestScope <ILoggingWork, LoggingWork>();

            container.BindInRequestScope <ISecurityWorker, SecurityWork>();

            //Setting
            container.BindInRequestScope <ISettingWork, SettingWork>();

            //Resource
            container.BindInRequestScope <ILanguageWork, LanguageWork>();

            //Membership
            container.BindInRequestScope <IMemberUserWork, MemberUserWorker>();
            container.BindInRequestScope <IMemberRoleWork, MemberRoleWork>();

            //Content
            container.BindInRequestScope <ICommentWork, CommentWork>();
            container.BindInRequestScope <ITopicWork, TopicWork>();
            container.BindInRequestScope <ITagCategoryWork, TagCategoryWork>();
            container.BindInRequestScope <ITagWork, TagWork>();
            container.BindInRequestScope <IThreadWork, ThreadWork>();
            container.BindInRequestScope <IVoteWork, VoteWork>();
            container.BindInRequestScope <IBannedWordWork, BannedWordWork>();

            //File
            container.BindInRequestScope <IUploadFileCategoryWork, UploadFileCategoryWork>();
            container.BindInRequestScope <IUploadFileWork, UploadFileWork>();

            //Permission
            container.BindInRequestScope <IPermissionWork, PermissionWork>();

            #endregion

            container.BindInRequestScope <IEmailWork, EmailWork>();

            return(container);
        }
コード例 #17
0
ファイル: UnityHelper.cs プロジェクト: nhsengland/futurenhs
        /// <summary>
        ///     Inject
        /// </summary>
        /// <returns></returns>
        public static void BuildUnityContainer()
        {
            // register all your components with the container here
            // it is NOT necessary to register your controllers

            // Database context, one per request, ensure it is disposed
            Container.BindInRequestScope <IMvcForumContext, MvcForumContext>();

            //Bind the various domain model services and repositories that e.g. our controllers require
            Container.BindInRequestScope <IRoleService, RoleService>();
            Container.BindInRequestScope <IGroupService, GroupService>();
            Container.BindInRequestScope <IMembershipService, MembershipService>();
            Container.BindInRequestScope <IPermissionService, PermissionService>();
            Container.BindInRequestScope <ISettingsService, SettingsService>();
            Container.BindInRequestScope <ITopicService, TopicService>();
            Container.BindInRequestScope <ITopicTagService, TopicTagService>();
            Container.BindInRequestScope <IPostService, PostService>();
            Container.BindInRequestScope <ILocalizationService, LocalizationService>();
            Container.BindInRequestScope <IVoteService, VoteService>();
            Container.BindInRequestScope <IMembershipUserPointsService, MembershipUserPointsService>();
            Container.BindInRequestScope <IGroupPermissionForRoleService, GroupPermissionForRoleService>();
            Container.BindInRequestScope <ILoggingService, LoggingService>();
            Container.BindInRequestScope <IEmailService, EmailService>();
            Container.BindInRequestScope <IReportService, ReportService>();
            Container.BindInRequestScope <IActivityService, ActivityService>();
            Container.BindInRequestScope <IPollService, PollService>();
            Container.BindInRequestScope <IBannedEmailService, BannedEmailService>();
            Container.BindInRequestScope <IBannedWordService, BannedWordService>();
            Container.BindInRequestScope <IUploadedFileService, UploadedFileService>();
            Container.BindInRequestScope <IFavouriteService, FavouriteService>();
            Container.BindInRequestScope <IGlobalPermissionForRoleService, GlobalPermissionForRoleService>();
            Container.BindInRequestScope <INotificationService, NotificationService>();
            Container.BindInRequestScope <IBlockService, BlockService>();
            Container.BindInRequestScope <IPostEditService, PostEditService>();
            Container.BindInRequestScope <IAssemblyProvider, AssemblyProvider>();
            Container.BindInRequestScope <ISpamService, SpamService>();
            Container.BindInRequestScope <IFeatureManager, FeatureManager>();
            Container.BindInRequestScope <IFolderCommand, FolderCommand>();
            Container.BindInRequestScope <IFolderService, FolderService>();
            Container.BindInRequestScope <IFileService, FileService>();
            Container.BindInRequestScope <IFileUploadValidationService, FileUploadValidationService>();
            Container.BindInRequestScope <IGroupInviteService, GroupInviteService>();
            Container.BindInRequestScope <IRegistrationEmailService, RegistrationEmailService>();
            Container.BindInRequestScope <ISmtpClientFactory, SmtpClientFactory>();
            Container.BindInRequestScope <IGroupAddMemberService, GroupAddMemberService>();
            Container.BindInRequestScope <IImageService, ImageService>();


            Container.RegisterSingleton <IValidateFileType, FileTypeValidator>();

            Container.RegisterInstance <IMemoryCache>(new MemoryCache(Options.Create <MemoryCacheOptions>(new MemoryCacheOptions())));

            switch (ConfigurationManager.AppSettings["SendEmailService"])
            {
            case "SendGrid":
                Container.BindInRequestScope <ISendEmailService, SendGridEmailService>();
                Container.RegisterInstance <ISendGridClient>(new SendGridClient(ConfigurationManager.AppSettings["Email_SendGridApiKey"]));
                break;

            case "Smtp":
                Container.BindInRequestScope <ISendEmailService, SmtpEmailService>();
                break;
            }

            Container.BindInRequestScope <ISystemPagesService, SystemPagesService>();
            // Repositories
            Container.RegisterInstance <IConfigurationProvider>(new ConfigurationProvider(
                                                                    ConfigurationManager.ConnectionStrings["MVCForumContextReadOnly"].ConnectionString,
                                                                    ConfigurationManager.ConnectionStrings["MVCForumContext"].ConnectionString,
                                                                    Convert.ToInt32(ConfigurationManager.AppSettings["Polly_RetryAttempts"]),
                                                                    Convert.ToInt32(ConfigurationManager.AppSettings["Polly_DelayBetweenAttempts"]),
                                                                    ConfigurationManager.ConnectionStrings["AzureBlobStorage:FilesPrimaryConnectionString_TO_BE_RETIRED"].ConnectionString,
                                                                    ConfigurationManager.AppSettings["AzureBlobStorage:FilesContainerName_TO_BE_RETIRED"],
                                                                    ConfigurationManager.AppSettings["AzureBlobStorage:FilesPrimaryEndpoint_TO_BE_RETIRED"],
                                                                    ConfigurationManager.AppSettings["Email_SmtpFrom"],
                                                                    ConfigurationManager.AppSettings["FileServer_TemplateUrl"],
                                                                    ConfigurationManager.AppSettings["FileServer_TemplateUrlFileIdPlaceholder"],
                                                                    ConfigurationManager.AppSettings["AzurePlatform:ApplicationGateway:FQDN"]));
            Container.BindInRequestScope <IDbRetryPolicy, DbRetryPolicy>();
            Container.BindInRequestScope <IDbConnectionFactory, DbConnectionFactory>();
            Container.BindInRequestScope <IFolderRepository, FolderRepository>();
            Container.BindInRequestScope <IFileRepository, FileRepository>();
            Container.BindInRequestScope <IFileCommand, FileCommand>();
            Container.BindInRequestScope <IGroupInviteRepository, GroupInviteRepository>();
            Container.BindInRequestScope <IGroupInviteCommand, GroupInviteCommand>();
            Container.BindInRequestScope <ISystemPagesRepository, SystemPagesRepository>();
            Container.BindInRequestScope <ISystemPagesCommand, SystemPagesCommand>();
            Container.BindInRequestScope <IGroupAddMemberRepository, GroupAddMemberRepository>();
            Container.BindInRequestScope <IGroupRepository, GroupRepository>();
            Container.BindInRequestScope <IGroupAddMemberCommand, GroupAddMemberCommand>();
            Container.BindInRequestScope <IGroupRepository, GroupRepository>();
            Container.BindInRequestScope <IGroupAddMemberCommand, GroupAddMemberCommand>();
            Container.BindInRequestScope <IGroupCommand, GroupCommand>();
            Container.BindInRequestScope <IFileServerService, FileServerService>();
            Container.BindInRequestScope <IUserRepository, UserRepository>();
            Container.BindInRequestScope <IImageRepository, ImageRepository>();
            Container.BindInRequestScope <IImageCommand, ImageCommand>();
        }