using System; using MongoDB.Driver; using MongoDB.Bson; namespace SewaOutdoor { public partial class Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { CekKoneksiMongoDB(); } } private void CekKoneksiMongoDB() { try { // Connection string yang sudah diperbaiki string connString = "mongodb://abidahitsna:Itsnkab59@ac-te008zd-shard-00-00.ldovxtw.mongodb.net:27017,ac-te008zd-shard-00-01.ldovxtw.mongodb.net:27017,ac-te008zd-shard-00-02.ldovxtw.mongodb.net:27017/?ssl=true&replicaSet=atlas-b4gq9c-shard-0&authSource=admin&retryWrites=true&w=majority"; // Setting koneksi var settings = MongoClientSettings.FromConnectionString(connString); settings.ServerApi = new ServerApi(ServerApiVersion.V1); settings.ConnectTimeout = TimeSpan.FromSeconds(60); settings.ServerSelectionTimeout = TimeSpan.FromSeconds(60); // Force TLS 1.2 (penting untuk Somee.com) System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12; System.Net.ServicePointManager.Expect100Continue = true; System.Net.ServicePointManager.DefaultConnectionLimit = 9999; // Buat koneksi var client = new MongoClient(settings); var database = client.GetDatabase("sewaoutdoor_db"); // Test dengan ping var command = new BsonDocument("ping", 1); var result = database.RunCommand(command); lblStatus.Text = "[OK] Terhubung ke MongoDB Atlas"; lblStatus.CssClass = "status-ok"; } catch (Exception ex) { string errorMsg = ex.Message; if (ex.InnerException != null) errorMsg += " | Detail: " + ex.InnerException.Message; lblStatus.Text = "[GAGAL] " + errorMsg; lblStatus.CssClass = "status-fail"; } } } }