Saya tidak pernah ingin membagi string koneksi menggunakan manipulasi string dan mendapatkan server, database, uid, dan kata sandi.
Saya membaca tautan berikut dan membaca jawaban yang diterima, saya menemukan bahwa itu adalah cara terbaik untuk mengeluarkan userid dan kata sandi dari string koneksi, tetapi bagaimana dengan Nama Database?
Cara yang benar untuk mendapatkan nama pengguna dan kata sandi dari string koneksi?
Cara mendapatkan Nama Database dari Connection String menggunakan SqlConnectionStringBuilder. (apakah Sumber Data adalah nama Server?)
string database = builder["Initial Catalog"] as string;
- "Database" adalah kata kunci yang tidak valid.Alternatif yang lebih sederhana adalah mendapatkan informasi dari objek koneksi itu sendiri. Sebagai contoh:
IDbConnection connection = new SqlConnection(connectionString); var dbName = connection.Database;
Demikian pula Anda bisa mendapatkan nama server juga dari objek koneksi.
DbConnection connection = new SqlConnection(connectionString); var server = connection.DataSource;
sumber
SqlConnection
. Apakah ada jalan keluar yang serupa untuk membuat RDBMS silang ini?IDbConnection
?string connectString = "Data Source=(local);" + "Integrated Security=true"; SqlConnectionStringBuilder builder = new SqlConnectionStringBuilder(connectString); Console.WriteLine("builder.InitialCatalog = " + builder.InitialCatalog);
sumber
ini memberi Anda Xact;
System.Data.SqlClient.SqlConnectionStringBuilder connBuilder = new System.Data.SqlClient.SqlConnectionStringBuilder(); connBuilder.ConnectionString = connectionString; string server = connBuilder.DataSource; //-> this gives you the Server name. string database = connBuilder.InitialCatalog; //-> this gives you the Db name.
sumber
Nama database adalah nilai properti SqlConnectionStringBuilder.InitialCatalog .
sumber
Anda dapat menggunakan Properti InitialCatalog atau
builder["Database"]
bekerja juga. Saya mengujinya dengan case yang berbeda dan masih berfungsi.sumber