C# - Teras Rangka Kerja Entiti - Penjanaan pangkalan data automatik
P粉520204081
2023-08-26 17:41:13
<p>Apabila saya menjalankan aplikasi desktop saya buat kali pertama, saya mahu pangkalan data dan struktur jadual dibuat secara automatik. </p><p>
Saya tidak dapat mencari sebarang contoh atau dokumentasi mengenai kaedah yang setara dalam EFCore.
</p><p>
Saya melakukan segala-galanya seperti yang diterangkan dalam dokumen ini:
https://dev.mysql.com/doc/connector-net/en/connector-net-entityframework-core-example.html
</p><p>
Tetapi saya masih menghadapi masalah: Pengecualian: 'Microsoft.Data.SqlClient.SqlException' dibuang dalam Microsoft.Data.SqlClient.dll dan pangkalan data kosong :( Jika anda boleh membantu saya sila beritahu saya.
</p><p></p>
<pre class="brush:php;toolbar:false;">protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
cubalah
{
optionsBuilder.UseMySQL("server=localhost;userid=root;password=topSecret;database=kartoteka-pracownicza");
}
tangkap (MySqlException ex)
{
suis(cth.Nombor)
{
kes 0:
MessageBox.Show("Tidak dapat menyambung ke pelayan, sila hubungi pentadbir");
pecah;
kes 1045:
MessageBox.Show("Nama pengguna/kata laluan tidak sah, sila cuba lagi");
pecah;
}
};
}</pre></p>
Hai, jika anda menggunakan migrasi, anda boleh menambah sesuatu seperti ini pada
Startup.cs
anda:Jika anda tidak menggunakan migrasi, anda boleh menggunakan
Migrate();
替换为EnsureCreated();
untuk menggunakan konteks pangkalan data anda.