4
解决界面我想有一个像下面如何使用工厂使用Autofac
public SomeService(IMongoDatabase mongoDatabase) {
DB = mongoDatabase;
}
一个服务,我想用一个工厂来解决IMongoDatabase
,只是封装IConfiguration
使用
public static IMongoDatabase GetMongoDatabase(IConfiguration config)
{
var connectionString = config.Get("SomeConnectionString");
// MongoClient handles connection pooling internally
var client = new MongoClient(connectionString);
var db = client.GetDatabase(config.Get("SomeDbName"));
return db;
}
我不知道如何处理注册,以便MongoDbFactory.GetMongoDatabase
被调用,只要任何类需要IMongoDatabase
。 IConfiguration
将被注册。
我真的很想在我的服务中使用IMongoDatabase
而不是Func<IConfiguration, IMongoDatabase>
。后者似乎太钝了,需要消费者执行我应该能够为他们实施的步骤。
这正是我一直在寻找。谢谢。 –