2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Tietokannan siirto on tietokantaskeeman muutosten hallintatekniikka, jonka avulla kehittäjät voivat päivittää tietokantaskeeman turvallisesti sovelluksen elinkaaren aikana menettämättä tietoja tai tuhoamatta olemassa olevaa tietokantarakennetta. Entity Framework Coressa (EF Core) tietokannan siirto on erityisen hyödyllinen, koska se tukee Code First -kehitysmallia, jossa tietokantaskeema luodaan ja päivitetään automaattisesti koodin malliluokkien perusteella. Tässä on muutamia tärkeimpiä syitä tietokannan siirtymiseen:
Tietokannan siirto mahdollistaa tietokantaskeeman muutosten versioinnin osana lähdekoodia. Tämä on tärkeää tiimiyhteistyön ja lähdekoodin hallinnan kannalta, koska se varmistaa, että kaikki kehittäjät ja käyttöönottoympäristöt käyttävät samaa tietokantaskeemaa.
Ohjelmistokehitysprosessin aikana mallit muuttuvat usein. Tietokannan siirron avulla kehittäjät voivat asteittain muokata tietokantakaaviota rakentamatta tietokantaa uudelleen tyhjästä, mikä helpottaa uusien ominaisuuksien nopeaa iterointia ja testausta.
Tietokannan siirron avulla voit muokata tietokantakaaviota säilyttäen samalla olemassa olevien tietojen eheyden. Voit esimerkiksi varmistaa, että tiedot eivät katoa, kun lisäät uusia sarakkeita, muutat tietotyyppejä tai nimeät sarakkeita uudelleen.
Tietokannan siirto tukee automatisoituja käyttöönottoprosesseja, mikä tekee tietokantaskeemojen siirtämisestä ja synkronoinnista helppoa ja luotettavaa eri ympäristöjen, kuten kehitys-, testi- ja tuotantoympäristöjen välillä.
Tietokantaskeeman muokkaaminen suoraan tuotantoympäristössä voi olla riskialtista. Tietokannan siirto tarjoaa suojatun mekanismin tuotantotietokantojen päivittämiseen ennalta määritettyjen siirtokomentosarjojen avulla, mikä vähentää suorien tietokantatoimintojen aiheuttamia riskejä.
Käyttämällä EF Coren add-migration- ja Update-Database-komentoja kehittäjät voivat helposti luoda ja ottaa käyttöön tietokantasiirtoja hallitakseen tietokantaskeeman muutoksia sovelluksen koko elinkaaren ajan.
Add-migration-komento on osa Entity Framework Corea, ja sitä käytetään tietokannan siirtojen luomiseen Code First -lähestymistapaa käytettäessä. Tämä komento luo siirtotiedoston DbContext- ja entiteettiluokkien nykyisen tilan perusteella. Tämä tiedosto sisältää kaikki tietokantaskeeman päivittämiseen tarvittavat komennot.
Antamasi tiedoston sisällön perusteella olet valmis suorittamaan siirtokomennon. Voit käyttää add-migration-komentoa seuraavasti:
1. Avaa Visual Studion "Package Manager Console" (PMC).
2. Varmista, että PMC:n oletusprojektiksi on asetettu projekti, joka sisältää DbContext-luokkasi. Sinun tapauksessasi tämä projekti on H.Modules.Operation.
3. Kirjoita seuraava komento PMC:hen:
add-migration init -projekti H.Modules.Operation
Tämä komento luo siirron nimeltä init. Parametri -project määrittää projektin, joka sisältää DbContextin, mikä on hyödyllistä, jos ratkaisu sisältää useita projekteja.
Tämän komennon suorittamisen jälkeen EF Core analysoi mallisi ja nykyisen tietokannan skeeman (jos tietokanta on olemassa) ja luo sitten siirtotiedoston, joka sisältää kaikki komennot, joita tarvitaan tietokantaskeeman synkronoimiseksi mallin kanssa. Tämä siirtotiedosto lisätään projektiisi, ja voit tarkastella ja muokata tätä tiedostoa.
Kun olet suorittanut tämän vaiheen, voit käyttää Update-Database-komentoa ottaaksesi tämän siirron käyttöön ja päivittämällä siten tietokantaskeeman.
julkinen luokka DataContextFactory : IDesignTimeDbContextFactory<DataContext>
{
julkinen DataContext CreateDbContext(merkkijono[] args)
{
var optionsBuilder = uusi DbContextOptionsBuilder<DataContext> ();
optionsBuilder.UseSqlite("Tietolähde=Migration.db");
palauttaa uuden DataContext(optionsBuilder.Options);
}
}
H.Moduulit.Toiminta
add-migration init -projekti H.Modules.Operation
Update-Database -projekti H.Modules.Operation
Tuotantoympäristö suorittaa automaattisesti siirron ja korvaa tietokannan luontimenetelmän
db.Database.Migrate();
Entity Framework Core -katsaus - EF Core |
DbContextin käyttöikä, konfigurointi ja alustus - EF Core |
System.Windows.Controls nimitila |. Microsoft Learn
GitHub – HeBianGu/WPF-ControlDemo: Esimerkki
GitHub – HeBianGu/WPF-ControlBase: Wpf-kapseloitu mukautettu ohjausresurssikirjasto
GitHub - HeBianGu/WPF-Control: WPF-kevyt ohjaus- ja nylkimiskirjasto
System.Windows.Controls nimitila |. Microsoft Learn
HeBianGun henkilökohtainen tila-HeBianGun henkilökohtainen kotisivu-Bilibili-video