Недавно я настроил цифровой океанский сервер и установил на него монго. Я создал открытый и закрытый ключи ssh, чтобы иметь возможность войти в систему, но я не думаю, что мне действительно нужно использовать ssh или учетные данные для самого сервера, а не только IP-адрес моего сервера и учетные данные сервера Mongo.
- Можно ли это проверить как правильное?
2.Кроме того, я получаю сообщение об ошибке при попытке подключения. Я вызываю Mongo() для подключения.
В ошибке говорится, что в MongoDB.Driver.Core.dll произошло исключение типа «System.ArgumentException», но оно не было обработано в пользовательском коде.
Дополнительная информация: «mongodb://MongoUserName:[email protected]:27017/admin:27017» не является допустимой конечной точкой.
public static class DataSources
{
public static string URIString = "mongodb://"+s_Username
+":"+s_Password+"@"+ip+":"+port+"/admin";
public static string ip = "XXX.XX.XXX.XXX";
public static string port = "27017";
public static string s_Username = "MongoUsername";
public static string s_Password = "MongoPassword";
public static MongoCredential GetMongoCredentials()
{
return MongoCredential.CreateCredential("admin", s_Username, s_Password);
}
public static MongoClientSettings GetMongoSettings()
{
var settings = new MongoClientSettings
{
Credentials = new[] { GetMongoCredentials() },
Server = new MongoServerAddress(URIString)
};
return settings;
}
public static MongoClient Mongo()
{
MongoClient mongoClient = new MongoClient(GetMongoSettings());
return mongoClient;
}
}