Ejemplo n.º 1
0
        private static AppSettings ConfigureDependencies(IServiceCollection services, IConfigurationRoot config, bool isDevelopment)
        {
            // get settings from appsettings.json and secrets.json
            AppSettings settings = new AppSettings();

            config.GetSection("AppSettings").Bind(settings);
            services.AddSingleton(settings);

            IServiceConfiguration exampleServiceConfiguration = new ExampleServiceConfiguration(
                settings.PersonServiceReadOnlyUrl,
                settings.ServiceUser,
                settings.ServicePassword,
                "byui.edu",
                10
                );

            services.AddScoped <IUserAuthToken, UserAuthToken>();
            services.AddSingleton(exampleServiceConfiguration);
            services.AddSingleton(Mapper.Configuration);
            services.AddScoped <IMapper>(s => new Mapper(s.GetRequiredService <IConfigurationProvider>(), s.GetService));

            if (!string.IsNullOrEmpty(settings.ConnectionString))
            {
                services.AddDbContext <ApiSnippetContext>(options => options.UseSqlServer(settings.ConnectionString));
            }
            else
            {
                services.AddDbContext <ApiSnippetContext>(options => options.UseInMemoryDatabase("ApiSnippet"));
            }
            services.AddScoped <IExampleRepository, ExampleRepository>();
            services.AddScoped <IClock, Clock>();
            services.AddScoped <ExampleBusiness>();

            return(settings);
        }
 public ExampleRepository(ExampleServiceConfiguration serviceConfiguration) : base(serviceConfiguration)
 {
 }