Object-relational mapping – ma'lumotlarni real obyektlarga akslantirish




Download 15.21 Kb.
Sana12.06.2023
Hajmi15.21 Kb.
#72263
Bog'liq
Entity Framework
Информаика укитишнинг асосий дидактик тамойиллар, 2-Mustaqil ish topshiriqlari, Простой Python просто с нуля (2019), Elektron talim muhitida videokontentlarn (1), butun haqiqiy tur, misol11a1, 9, 4. Ташков Восстанавливаем данные на 100%, CMS tizimlari fan dasturi, 1, 2., 2, 10, 3- amaliy mashg‘uloti Mavzu , Avaliy mashgulot

Entity Framework texnologiyasi
Entity Framework ma'lumotlar bazasiga kirish uchun Microsoft firmasi tomonidan taqdim etilgan ORM (object-relational mapping – ma'lumotlarni real obyektlarga akslantirish) texnologiya hisoblanadi. Entity Framework Core ma'lumotlar bazasi saqlanish turidan qat'iy nazar, ma'lumotlar bazasining o'zidan va uning jadvallaridan abstraksiyalash va ma'lumotlar bilan sinf ob'ektlari sifatida ishlash imkonini beradi. Agar jismoniy darajada biz jadvallar, indekslar, asosiy va chetki kalitlar bilan ishlasak, Entity Framework da biz taklif qilingan kontseptual darajada ob'ektlar bilan ishlaymiz.
Ma'lumotlardan foydalanish texnologiyasi sifatida Entity Framework Core .NET platformasi ustida ishlaydi va shuning uchun .NET stekining turli platformalarida foydalanish mumkin. Bularga Windows Forms, konsol ilovalari, WPF, UWP va ASP.NET Core kabi standart platformalar kiradi. Shu bilan birga, EF Core-ning kross-platforma xususiyati uni nafaqat Windows, balki Linux va Mac OS X da ishlatish imkonini beradi.
Entity Framework Core .NET platformasiga asoslanganligi sababli, u ushbu platforma bilan birga rivojlanadi. EF Core - 7.0 ning joriy versiyasi 2022-yil noyabr oyida .NET 7 bilan birga chiqarildi. Texnologiya rivojlanishda davom etmoqda.
Entity Framework Core ko'plab turli ma'lumotlar bazasi tizimlarini qo'llab-quvvatlaydi. Shunday qilib, biz EF Core orqali istalgan ma'lumotlar bazasi bilan ishlashimiz mumkin, agar buning uchun zarur provayder mavjud bo'lsa. Hozirda Microsoft o'zi bir qator provayderlarni qo'llab quvvatlaydi: MS SQL Server bilan ishlash uchun, SQLite uchun, PostgreSQL uchun. Shuningdek, boshqa provayderlar ham mavjud, masalan, MySQL uchun.

Shuni ta'kidlash kerakki, Entity Framework Core ochiq kod loyihasi sifatida ishlab chiqilmoqda, uning barcha fayllarini https://github.com/dotnet/efcore manzilidagi github bazasidan topish mumkin.


Shuni ham ta'kidlash joizki, EF Core ma'lumotlar bilan ishlash uchun umumiy API taqdim etadi. Va agar, masalan, biz maqsadli ma'lumotlar bazasini o'zgartirishga qaror qilsak, loyihadagi asosiy o'zgarishlar birinchi navbatda mos keladigan provayderlarga konfiguratsiya va ulanish sozlamalariga tegishli bo'ladi. Va ma'lumotlar bilan bevosita ishlaydigan, ma'lumotlarni qabul qiladigan, ma'lumotlar bazasiga qo'shadigan va hokazo kod bir xil bo'lib qoladi.

Entity Frameworkning asosiy konsepsiyasi sub'ekt yoki ob'ekt tushunchasidir. Ob'ekt ma'lum bir ob'ekt bilan bog'langan ma'lumotlar to'plamini belgilaydi. Shuning uchun bu texnologiya jadvallar bilan emas, balki ob'ektlar va ularning to'plamlari bilan ishlashni o'z ichiga oladi.


Har qanday ob'ekt, haqiqiy dunyoning ihtiyoriy ob'ekti kabi, bir qator xususiyatlarga ega. Misol uchun, agar ob'ekt insonni tavsiflasa, unda ism, familiya, bo'y, yosh kabi xususiyatlarni ajratib ko'rsatishimiz mumkin. Xususiyatlar oddiy int yoki string ma'lumotlar turlarini ifodalashi shart emas, balki murakkabroq ma'lumotlar turlarini ham ifodalashi mumkin. Va har bir ob'ekt bir yoki bir nechta xususiyatga ega bo'lishi mumkin, ular bu ob'ektni boshqalardan ajratib turadi va bu ob'ektni unikal tarzda belgilaydi. Bunday xususiyatlar kalitlar deb ataladi.

haqiqiy ma'lumotlar bazasida xorijiy kalitlar orqali bog'lanish mavjud bo'lgani kabi, bunda ob'ektlar bir-ko'p, bir-bir va ko'p-ko'p assotsiativ munosabatlar bilan bog'lanishi mumkin,.

ORM texnologiyasi sifatida Entity Framework Core-ning o'ziga xos xususiyati ma'lumotlar bazasidan ma'lumotlarni olish uchun LINQ so'rovlaridan foydalanishdir. LINQ-dan foydalanib, biz ob'ektlarni tanlash uchun turli xil, shu jumladan turli xil assotsiativ havolalar bilan bog'liq so'rovlarni yaratishimiz mumkin. Entity Framework esa so'rovni bajarishda LINQ ifodalarini ma'lum bir ma'lumotlar bazasini boshqarish tizimi uchun tushunarli bo'lgan iboralarga (odatda, SQL ifodalariga) tarjima qiladi.
Entity Framework Core ning asosiy funksiyalari quyidagi paketlarda jamlangan:
Microsoft.EntityFrameworkCore:основной пакет EF Core

Microsoft.EntityFrameworkCore.SqlServer: представляет функциональность провайдера для Microsoft SQL Server и SQL Azure

Microsoft.EntityFrameworkCore.SqlServer.NetTopologySuite: предоставляет поддержку географических типов (spatial types) для SQL Server

Microsoft.EntityFrameworkCore.Sqlite: представляет функциональность провайдера для SQLite и включает нативные бинарные файлы для движка базы данных

Microsoft.EntityFrameworkCore.Sqlite.Core: представляет функциональность провайдера для SQLite, но в отличие от предыдущего пакета не содержит нативные бинарные файлы для движка базы данных

Microsoft.EntityFrameworkCore.Sqlite.NetTopologySuite: предоставляет поддержку географических типов (spatial types) для SQLite

Microsoft.EntityFrameworkCore.Cosmos: представляет функциональность провайдера для Azure Cosmos DB

Microsoft.EntityFrameworkCore.InMemory: представляет функциональность провайдера базы данных в памяти

Microsoft.EntityFrameworkCore.Tools: содержит команды EF Core PowerShell для Visual Studio Package Manager Console; применяется в Visual Studio для миграций и генерации классов по готовой бд

Microsoft.EntityFrameworkCore.Design: содержит вспомогательные компоненты EF Core, применяемые в процессе разработки

Microsoft.EntityFrameworkCore.Proxies: хранит функциональность для так называемой "ленивой загрузки" (lazy-loading) и прокси остлеживания изменений

Microsoft.EntityFrameworkCore.Abstractions: содержит набор абстракций EF Core, которые не зависят от конкретной СУБД



Microsoft.EntityFrameworkCore.Relational: хранит компоненты EF Core для провайдеров реляционных СУБД

Microsoft.EntityFrameworkCore.Analyzers: содержит функционал анализаторов C# для EF Core
Download 15.21 Kb.




Download 15.21 Kb.

Bosh sahifa
Aloqalar

    Bosh sahifa



Object-relational mapping – ma'lumotlarni real obyektlarga akslantirish

Download 15.21 Kb.