Saya menemukan ini sangat sulit untuk mendapatkan jawaban tetapi akhirnya menemukan jawabannya. Jadi saya akan menulis langkah-langkahnya di bawah ini.
Sebelum Anda mengatur string koneksi Anda dalam kode, pastikan Anda benar-benar dapat mengakses database Anda. Mulailah dengan masuk ke server basis data menggunakan SSMS (Sql Server Management Studio atau yang setara di basis data lain) secara lokal untuk memastikan Anda memiliki akses menggunakan detail apa pun yang ingin Anda gunakan.
Selanjutnya (jika perlu), jika Anda mencoba mengakses database di server terpisah, pastikan Anda juga dapat melakukan hal yang sama di SSMS. Jadi atur SSMS di komputer dan pastikan Anda dapat mengakses server dengan nama pengguna dan kata sandi ke server database itu.
Jika Anda tidak mendapatkan 2 hak di atas, Anda hanya membuang-buang waktu karena Anda tidak dapat mengakses database. Ini bisa jadi karena pengguna yang Anda atur salah, tidak mengaktifkan akses jarak jauh (jika perlu), atau port tidak dibuka (jika perlu), di antara banyak alasan lain tetapi ini adalah yang paling umum.
Setelah Anda memverifikasi bahwa Anda dapat mengakses database menggunakan SSMS. Langkah selanjutnya, hanya untuk mengotomatiskan proses dan menghindari kesalahan, adalah membiarkan sistem yang bekerja untuk Anda.
- Mulailah proyek kosong, tambahkan pilihan Anda Linq ke SQL atau Dataset (EF bagus tetapi string koneksi tertanam di dalam string con EF, saya ingin yang bersih), dan sambungkan ke database Anda menggunakan detail yang diverifikasi di atas di penyihir penipu. Tambahkan tabel apa saja dan simpan file.
Sekarang masuk ke konfigurasi web, dan secara ajaib, Anda akan melihat string koneksi yang bagus dan bersih di sana dengan semua detail yang Anda butuhkan.
{Di bawah ini adalah bagian dari posting lama sehingga Anda dapat mengabaikan ini, saya membiarkannya sebagai referensi sebagai cara paling dasar untuk mengakses database hanya dari kode di belakang. Gulir ke bawah dan lanjutkan dari langkah 2 di bawah. }
Mari kita asumsikan langkah-langkah di atas memulai Anda dengan sesuatu seperti berikut sebagai string koneksi Anda dalam kode di belakang:
string conString = "Data Source=localhost;Initial Catalog=YourDataBaseName;Integrated Security=True;";
Langkah ini sangat penting. Pastikan Anda memiliki format string koneksi di atas yang berfungsi sebelum mengambil langkah-langkah berikut. Pastikan Anda benar-benar dapat mengakses data Anda menggunakan beberapa bentuk teks perintah sql yang menampilkan beberapa data dari tabel dalam label atau boses teks atau apa pun, karena ini adalah cara paling sederhana untuk melakukan string koneksi.
Setelah Anda yakin gaya di atas berfungsi, sekarang saatnya untuk mengambil langkah selanjutnya:
1. Ekspor string literal Anda (hal-hal di dalam tanda kutip, termasuk tanda kutip) ke bagian berikut dari file web.config (untuk beberapa string koneksi, cukup lakukan beberapa baris:
<configuration>
<connectionStrings>
<add name="conString" connectionString="Data Source=localhost;Initial Catalog=YourDataBaseName;Integrated Security=True;" providerName="System.Data.SqlClient" />
<add name="conString2" connectionString="Data Source=localhost;Initial Catalog=YourDataBaseName;Integrated Security=True;" providerName="System.Data.SqlClient" />
<add name="conString3" connectionString="Data Source=localhost;Initial Catalog=YourDataBaseName;Integrated Security=True;" providerName="System.Data.SqlClient" />
</connectionStrings>
</configuration>
{Di atas adalah bagian dari posting lama, setelah melakukan 3 langkah teratas, seluruh proses ini akan dilakukan untuk Anda, jadi Anda dapat mengabaikannya. Saya tinggalkan saja di sini untuk referensi saya sendiri. }
2. Sekarang tambahkan baris kode berikut ke kode C # di belakang, terlebih dahulu tepat di bawah definisi kelas (yaitu tidak di dalam metode). Ini mengarah ke folder root proyek Anda. Pada dasarnya itu adalah nama proyek. Biasanya ini adalah lokasi file web.config (dalam hal ini proyek saya disebut Proyek Saya.
static Configuration rootWebConfig = WebConfigurationManager.OpenWebConfiguration("/MyProject");
3. Sekarang tambahkan baris kode berikut ke kode C # di belakang. Ini menyiapkan sebuah string konstan yang dapat Anda referensikan di banyak tempat di seluruh kode Anda jika Anda memerlukan sebuah conString dalam metode yang berbeda.
const string CONSTRINGNAME = "conString";
4. Selanjutnya tambahkan baris kode berikut ke kode C # di belakang. Ini mendapatkan string koneksi dari file web.config dengan nama conString (dari konstanta di atas)
ConnectionStringSettings conString = rootWebConfig.ConnectionStrings.ConnectionStrings[CONSTRINGNAME];
5. Terakhir, di mana Anda semula akan memiliki sesuatu yang mirip dengan baris kode ini:
SqlConnection con = new SqlConnection(conString)
Anda akan menggantinya dengan baris kode ini:
SqlConnection con = new SqlConnection(conString.ConnectionString)
Setelah melakukan 5 langkah ini, kode Anda akan berfungsi seperti sebelumnya. Hense alasan Anda menguji konstruksinya terlebih dahulu dalam format aslinya sehingga Anda tahu apakah itu masalah dengan string koneksi atau apakah itu masalah dengan kode.
Saya baru mengenal C #, ASP.Net dan Sql Server. Jadi saya yakin pasti ada cara yang lebih baik untuk melakukan kode ini. Saya juga akan menghargai umpan balik tentang cara meningkatkan langkah-langkah ini jika memungkinkan. Saya telah mencari ke mana-mana untuk sesuatu seperti ini tetapi saya akhirnya mengetahuinya setelah bekerja keras selama berminggu-minggu. Melihatnya sendiri, saya masih berpikir, pasti ada cara yang lebih mudah.
Semoga bermanfaat.