oktatas:programozas:csharp:dotnetcore:entityframeworkcore
Tartalomjegyzék
MariaDB elérése EntityFrameworkCore
- Szerző: Sallai András
- Copyright © 2023, Sallai András
- Szerkesztve: 2023
- Licenc: CC BY-SA 4.0
- Web: https://szit.hu
Függőség telepítése
Szükségünk van az EntityFrameworkCore.MySql-re.
dotnet new console -o app01 cd app01 dotnet add package Pomelo.EntityFrameworkCore.MySql
Adatbázis
Követelmény: Lenni kell egy Id mezőnek, vagy egy olyan mezőnek amiben benne van az id szó. Lehet például BookId is.
Kisbetű, nagybetű nem számít a mezőnevek esetén. A táblanév esetén viszont igen. Mivel az C# nyelvben az osztály nevek és az adattagok nevének első betűje nagybetű, így ajánlott ehhez igazodni.
- create.sql
create database konyvesbolt; use konyvesbolt; create table Books ( Id int not null primary key auto_increment, Cim varchar(50), Szerzo varchar(50) );
Entity és Context
- Book.cs
public class Book { public int Id { get; set; } public string Cim { get; set; } = ""; public string Szerzo { get; set; } = ""; }
- Context.cs
using Microsoft.EntityFrameworkCore; class Context : DbContext { string str = "Server=localhost; User ID=konyvesbolt; Password=titok; Database=konyvesbolt"; public DbSet<Book> Books { get; set; } protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) { optionsBuilder.UseMySql(str, ServerVersion.AutoDetect(str)); } }
Új könyv felvétele
- Program.cs
Console.WriteLine("Új könyv felvétele"); var database = new Context(); var book = new Book { Cim = "Váratás", Szerzo = "Csengő" }; database.Books.Add(book); database.SaveChanges();
Lekérdezés
- Program.cs
Console.WriteLine("Könyvek lekérdezése..."); var context = new Context(); var books = context.Books .ToList(); foreach(var book in books) { Console.WriteLine($"{book.Cim}:{book.Szerzo}"); }
Linkek
oktatas/programozas/csharp/dotnetcore/entityframeworkcore.txt · Utolsó módosítás: 2023/12/24 15:15 szerkesztette: admin