c# - 如何以编程方式创建新的 Mongo 数据库?

标签 c# mongodb mongodb-.net-driver

我正在尝试以编程方式创建一个新数据库,每个客户端一个数据库。

并使用这个:

public void CreateNewClientDatabase(Client client)
{
    var connectionString = Util.GetClientDatabaseConnectionString(client.DatabaseName);
    var mongoClient = new MongoDB.Driver.MongoClient(connectionString);
    var server = mongoClient.GetServer();

    var db = server.GetDatabase(client.DatabaseName);
    db.CreateCollection("DatabaseCreated");
}

我在 CreateCollection 上遇到的错误是我没有正确的凭据,即使在连接字符串中,我的凭据是正确的。

异常内容如下:

Invalid credentials for database 'client_database_name'.

InnerException 为:

{"Command 'authenticate' failed: auth fails (response: { \"errmsg\" : \"auth fails\", \"ok\" : 0.0 })"}

connectionString 最终是这样的:

mongodb://admin_user:<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="e8898c858186b7989f8ca88481869d9bc68587868f878099c68b8785" rel="noreferrer noopener nofollow">[email protected]</a>:10042/client_database_name

缺少什么?


P.S. 使用 version 1.7 of MongoDB Driver

最佳答案

Bruno ...要在 MongoHQ 这样的共享服务上执行此操作,您将需要使用他们的 API 以编程方式创建新数据库。 API 文档位于:http://support.mongohq.com .

关于c# - 如何以编程方式创建新的 Mongo 数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14421652/

相关文章:

c# - SecurityElement.IsValidText 在 "&"上返回 true ... 为什么?

c# - NHibernate 和 SQL Server 2012 序列

ruby-on-rails - 如何直接从 Ruby 查询 MongoDB 而不是使用 Mongoid?

c# - 如何在使用 mongo csharp 插入后获取最近插入的文档的 _id?

c# - MongoDB 4.4.4 更改流返回所有文档更新而不是过滤条件匹配一个?

c# - 在 MongoDB 中使用嵌套数组保存字典

c# - 以编程方式访问 WPF 控件

c# - 允许正则表达式中的双字节空间

java - 在类路径资源 + Springboot 中创建名称为 'dataSource' 的 bean 时出错

通过 'merge' 文档进行 MongoDB 原子更新