[英]c# MongoAuthenticationException when connecting to remote mongodb (3.2)
[英]MongoDB.Driver.MongoAuthenticationException C# connection
我有此代码基于 mongodb 连接示例,我正在尝试插入 object。 但是在 insertone 线上出现错误
这是错误数据: MongoDB.Driver.MongoAuthenticationException:“无法使用 sasl 协议机制 SCRAM-SHA-1 进行身份验证。” 内部 MongoCommandException:命令 saslContinue 失败:身份验证错误 身份验证失败..
我是使用 mongodb 的新手,不知道错误原因是什么。 任何帮助
static void Main(string[] args)
{
MongoClient dbClient = new MongoClient("mongodb+srv://dbUser:dbPass001@cluster0-pfry9.mongodb.net/test?retryWrites=true&w=majority");
var database = dbClient.GetDatabase("test");
var collection = database.GetCollection<anyClassTest>("entities");
var r = new anyClassTest() { name="Original", edad = 36, id = 1};
collection.InsertOne(r);
}
public class anyClassTest
{
public string name { get; set; }
public int edad { get; set; }
public int id { get; set; }
}
对于独立的直接连接,请按以下方式创建客户端,
var servers = new List<MongoServerAddress>() { new MongoServerAddress("hostname", 27017) };
var credential = MongoCredential.CreateCredential("admin", "user", "pass");
var mongoClientSettings = new MongoClientSettings()
{
ConnectionMode = ConnectionMode.Direct,
Credential = credential,
Servers = servers.ToArray(),
ApplicationName = "NameOfApp",
};
MongoClient client = new MongoClient(mongoClientSettings);
一旦你有客户端(连接),那么你可以得到数据库/collections 并做你需要的。
var database = client.GetDatabase("dbname");
var collection = database.GetCollection<anyClassTest>("entities");
var r = new anyClassTest() { name="Original", edad = 36, id = 1};
collection.InsertOne(r);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.