reactredux/webapi/DataProviders/Extensions/ServiceCollectionExtensions.cs

25 lines
816 B
C#

using Microsoft.Extensions.DependencyInjection;
using MongoDB.Driver;
using MongoDB.Bson.Serialization;
using MongoDB.Bson.Serialization.IdGenerators;
namespace DataProviders.Extensions
{
public static class ServiceCollectionExtensions {
public static void RegisterDataproviders(this IServiceCollection services, IDataProvidersConfig appSettings) {
var config = appSettings.Database;
services.AddSingleton<IMongoClient>(x => new MongoClient(config.ConnectionString));
services.AddSingleton<IIdGenerator, GuidGenerator>();
services.AddSingleton<ISessionService, SessionService>();
services.AddSingleton<IContentDataProvider, ContentDataProvider>();
services.AddSingleton<IShopCartDataProvider, ShopCartDataProvider>();
Mappings.RegisterClassMap();
}
}
}