Datu piekļuve ar Entity Framework Ivars Āriņš
Datu piekļuve ar Entity Framework
Ivars Āriņš
Darba kārtība
Kas ir ORM? Populārākās .NET ORM bibliotēkas Entity Framework apskats Pamatdarbības ar DB datiem Dažādas pieejas darbā ar EF Jautājumi
Darba kārtība
Kas ir ORM? Populārākās .NET ORM bibliotēkas Entity Framework apskats Pamatdarbības ar DB datiem Dažādas pieejas darbā ar EF Jautājumi
Kas ir ORM
Object-Relational Mapping Objektorientētās programmēšanas
tehnika lai konvertētu datus starp nesavietojamām tipu sistēmām. Rezultātā tiek izveidota «virtuāla objektu datubāze», kuru var izmantot programmēšanas valodā.
Galvenokārt izmanto kā datu glabātuves abstrakciju.
Kas ir ORM?
Kas ir ORM?
Darba kārtība
Kas ir ORM?Populārākās .NET ORM
bibliotēkas Entity Framework apskats Pamatdarbības ar DB datiem Dažādas pieejas darbā ar EF Jautājumi
Populārākās .NET ORM bibliotēkas ADO.NET Entity Framework, included in .NET
Framework 3.5 SP1 and above MyBatis, free open source, formerly named
iBATIS LINQ to SQL, included in .NET Framework 3.5 LLBLGen Pro, commercial NHibernate, open source SubSonic, open source Vairāk - http
://en.wikipedia.org/wiki/List_of_object-relational_mapping_software#.NET
Darba kārtība
Kas ir ORM? Populārākās .NET ORM bibliotēkasEntity Framework apskats Pamatdarbības ar DB datiem Dažādas pieejas darbā ar EF Jautājumi
Entity Framework
ADO.NET tehnoloģiju kopa datu orientētas programmatūras izstrādes atbalstam
Ļauj izstrādātājiem strādāt ar datiem kā domēna objektiem (piem., klientiem un to adresēm), nesatraucoties par to, kā šie dati tiek glabāti datubāzē.
Nepieciešams .NET 3.5sp1 (vai jaunāks)
Entity Framework
Entity Framework vs DataSets Entity Framework ir «tulks» starp
objektiem un datubāzi. EF konteksta vaicājumi vienmēr tiek izpildīti datubāzē.
DataSet pēc būtības ir atmiņā esoša datubāze, kas tiek piepildīta ar datiem no datubāzes, ar kuriem tiek izpildītas tālākās manipulācijas.
Entity Framework vs Linq-to-Sql Linq-to-Sql atbalsta tikai vienkāršas
1:1 atbilstības starp datubāzes tabulām un objektiem
Linq-to-Sql atbalsta tikai MS SQL Server
EF ir pilnvērtīgs ORM rīks, kas spēj darboties ar sarežģītām relācijām un jebkuru DBVS kurai ir ADO.NET provider.
Darba kārtība
Kas ir ORM? Populārākās .NET ORM bibliotēkas Entity Framework apskatsPamatdarbības ar DB datiem Dažādas pieejas darbā ar EF Jautājumi
Pamatdarbības
Linq sintakse Objektu konteksts – klase, kas atbilst
ierakstu konteinerim (datubāzei). Satur DB pieslēguma informāciju un atbalstošo funkcionalitāti.
Pamatdarbības
Datu atlase
Datu pievienošana
Pamatdarbības
Datu izmainīšana
Datu dzēšana
Darba kārtība
Kas ir ORM? Populārākās .NET ORM bibliotēkas Entity Framework apskats Pamatdarbības ar DB datiemDažādas pieejas darbā ar EF Jautājumi
Pieejas darbā ar EF
Database First Model First Code First
Database First
Esoša datubāze EF izveido EDMX modeli no datubāzē
pieejamajiem metadatiem EF no EDMX modeļa uzģenerē klašu
struktūru Iespējams automātiski sinhronizēt
DB izmaiņas
Database First - demo
Model First
Datubāze vēl nav izveidota Datu struktūras tiek modelētas
izmantojot EF dizaineri Iespējams izveidot DB izveidošanas
skriptus Jāuzmanās ar manuālām izmaiņām
datubāzē Iespējams automātiski sinhronizēt
DB izmaiņas
Model First - demo
Code First
Visticamākais, datubāze vēl nav izveidota
Vispilnīgākā kontrole pār izveidoto kodu
Nav EDMX Iespējams izveidot DB izveidošanas
skriptus Jāuzmanās ar manuālām izmaiņām
DB Sinhronizācija ar DB izmaiņām ir
jāveic manuāli
Code First - demo
Jautājumi?
Resursi
Entity Framework MSDN lapa -http://msdn.microsoft.com/en-US/data/ef
Entity Framework terminoloģija - http://msdn.microsoft.com/en-us/library/bb387161.aspx
ORM saraksts wikipēdijā - http://en.wikipedia.org/wiki/List_of_object-relational_mapping_software#.NET
Materiāli - http://sdrv.ms/ZeaSd3
Kontakti
E-pasts: [email protected] Blogs: http://dotnet.lv/blogs/ia/ Twitter: PiRXlv
Paldies par uzmanību!