Skip to content

Helper methods for configuring services for MongoDB with dependency injection.

Notifications You must be signed in to change notification settings

event-driven-dotnet/EventDriven.DependencyInjection.URF.Mongo

Repository files navigation

EventDriven.DependencyInjection.Mongo

Helper methods for configuring services for MongoDB with dependency injection.

Setup

  • Package references.

    • EventDriven.DependencyInjection.URF.Mongo
  • appsettings.json file.

{
  "MyMongoSettings": {
    "ConnectionString": "mongodb://localhost:27017",
    "DatabaseName": "SagaConfigDb",
    "CollectionName": "MyEntities"
  }
}
  • Strongly typed app settings class.
public class MyMongoSettings : IMongoDbSettings
{
    public string ConnectionString { get; set; } = null!;
    public string DatabaseName { get; set; } = null!;
    public string CollectionName { get; set; } = null!;
}
  • Entity class.
public class MyEntity
{
    public Guid Id { get; set; }
    public string StringValue { get; set; } = null!;
    public int MyIntValue { get; set; }
}

Usage

  • In a Web API project.
builder.Services.AddMongoDbSettings<MyMongoSettings, MyEntity>(builder.Configuration);
  • In a console project.
var host = Host
    .CreateDefaultBuilder(args)
    .ConfigureServices(services =>
    {
        var config = services.BuildServiceProvider()
            .GetRequiredService<IConfiguration>();
        services.AddMongoDbSettings<MyMongoSettings, MyEntity>(config);
    })
    .Build();

About

Helper methods for configuring services for MongoDB with dependency injection.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages