Переместите свой код в класс, подобный этому (вы можете назвать его как угодно):
public static class MongoDbSettingsCollectionExtensions {
public static IServiceCollection ConfigureMongoDbSettings(
this IServiceCollection services,
IConfiguration Configuration) {
services.Configure<DataAccess.MongoDB.Contracts.AppSettings.MongoDBSettings> options =>
{
options.ConnectionString
= Configuration.GetConfigurationSection("MongoConnection:ConnectionString");
options.Database
= Configuration.GetConfigurationSection("MongoConnection:Database");
});
return services;
}
}
Это позволит вам вызвать его в Startup
, как вы предложили:
services.ConfigureMongoDbSettings(Configuration);
В качестве альтернативы вы можете передать сам раздел конфигурации, что и сделала команда Core с некоторыми службами:
services.ConfigureMongoDbSettings(Configuration.GetConfigurationSection("MongoConnection"));
Очевидно, что таким образом вам придется изменить функцию ConfigureMongoDbSettings()
выше, чтобы получить и работать непосредственно с разделом конфигурации.