C#MongoDB.Driver - 如何构造构造函数

时间:2017-02-08 09:35:50

标签: c# .net mongodb rest mongodb-.net-driver

我目前正在关注一个在线教程,为MongoDB创建一个RESTful API。该指南包含用于CRUD功能的DataAccess类。它使用旧的MongoDB API,现在已弃用。客户端,服务器和数据库有三个变量,然后有一个类的构造函数:

MongoClient _client;
MongoServer _server;
MongoDatabase _db;

public DataAccess()
{
    _client = new MongoClient("mongodb://localhost:27017");
    _server = _client.GetServer();
    _db = _server.GetDatabase("EmployeeDB");      
}

新API不需要服务器变量,因此您只需直接在客户端(C# MongoDB.Driver GetServer is Gone, What Now?)上调用,但我遇到构造函数问题。这就是我所拥有的,但是在构造函数中为_db代码行抛出了“无法隐式转换类型”错误:

MongoClient _client;
MongoDatabase _db;

public DataAccess()
{
    _client = new MongoClient("mongodb://localhost:27017");
    _db = _client.GetDatabase("Users");
}

1 个答案:

答案 0 :(得分:0)

MongoClient.GetDatabase返回IMongoDatabase界面。

将您的代码更改为:

MongoClient _client;
IMongoDatabase _db;

public DataAccess()
{
    _client = new MongoClient("mongodb://localhost:27017");
    _db = _client.GetDatabase("Users");
}