1

我正在尝试插入 MongoDatabase 的实例,但不知道实现此目的的好方法。

我可以尝试将它包装在另一个对象中,但这似乎是一种浪费的抽象,因为我确实想直接访问 MongoDatabase 对象。

我希望我能够创建一个对象,然后将其传递给温莎城堡并告诉它在解析时使用该对象。

希望像

var client = new MongoClient("mongodb://localhost");
var server = client.GetServer();
var database = server.GetDatabase("test");

然后我希望我可以在温莎城堡注册类似于的数据库对象

container.Register(Component.For(typeOf(MongoDatabase)).UseTheCreatedObject(database));

是否可以这样做或其他方式来获取MongoDatabase对象设置?

答案是 Krzysztof Koźmic 所建议的。我最初是在做类似的事情

Component.For(typeOf(MongoDatabase)).ImplementedBy<MongoDatabase>().Instance(database);

这导致了一个错误,说 MongoDatabase 已经注册或实现(不记得了)。所以我要做的就是删除 ImplementedBy。

4

1 回答 1

0

尝试:

Component.For<MongoDatabase>().Instance(database);
于 2013-10-07T09:35:04.203 回答