Entity Framework Core #24 - Many to Many Relationship | Tüm Detaylarıyla Çoka Çok İlişki Yapılanması
Github : github.com/gncyyldz/EF-Core-T...
#efcore #orm #ormnedir #entityframeworkcore #codefirst #relationships #manytomany #fluentapi #annotations #convention
00:00 Giriş
09:17 Default Convention İle Many to Many İlişkinin Yapılandırılması
21:28 Data Annotations İle Many to Many İlişkinin Yapılandırılması
32:40 Fluent API İle Many to Many İlişkinin Yapılandırılması
Bu video Gençay Yıldız tarafından NGAkademi bünyesinde ücretsiz çekilmiştir.
Gençay Yıldız'ın Bloğu
www.gencayyildiz.com/blog/
Güncel Duyuru ve Bildiriler İçin Sosyal Medya Hesaplarımız
/ ngakademi.sosyal
/ ngakademi
/ ngakademii
Bana destek olmak için kanalıma üye olabilirsiniz:
/ gençay yıldız
Пікірлер: 60
Hocam siz; Junior'ların hayranlıkla, Mid'lerin hobi olarak, Senior'ların ise gizli gizli izlediği bir üstadsınız :) Bir gün yüz yüze tanışmayı çok isterim.
Жыл бұрын
:) Seve seve...
Arkadaşlar hocanızın kıymetini bilin. Kimse size bu şekilde işin felsefesi ile beraber bu kadar bilgiyi aktarmaz. Kimilerine uzatıyor olarak gelmiş, kimi hakaret etmiş kimi küfür etmiş. Eleştiri yapmak küfür etmek değildir. Beğenmeyebilirsiniz. anlatım şekli hoşunuza gitmeyebilir. Hakaret etmek yerine eleştiri yapar, takip etmeyi bırakır başka yere gidersiniz. Sindire sindire anlatıyor, sorularınıza cevap veriyor daha ne istiyorsunuz ? Zaten başka yerde bu anlatımları anlamadığınız için şu an bu videoları izliyorsunuz. Size şöyle özetliyeyim. 22 yıldır programlama yapıyorum buradaki anlatılanların bir çoğunu biliyorum ama atladığım bir nokta var mı diye bütün serilerdeki bütün videoları sindire sindire sıkılmadan izliyorum ve atladığımız yerler olmuş. Şayet yeni kodlamaya başlamış olun şayet ilerletmek için burada olun emin olun mükemmel bir kaynak olmuş. Tabi ki konularda eksikler var ama yeri geldikçe tamamlanıyor. Yani burada her şeyi de en ince detayına kadar beklemeyin. kafanıza takılanları sorduğunuzda zaten cevaplıyor. Tabi ki para kazanacak. Bence kazanması da lazım ki bu seriler bitmesin. Ne kadar abulik gubilik içeriklerde ne paralar kazanıyor diğer youtuberlar. Şimdi onlar para kazanmayı hak ediyor hocanız hak etmiyor mu ? Bu bilgiler altın değerinde bence elinizden gelen desteği de verin. Allah' a emanet kolay gelsin herkese.
Güzel anlatım, teşekkürler
teşekkürler hocam
Hocam, 22. videodayken 24 geldi hızınıza yetişemiyorum maşallah :D Emeğiniz için teşekkürler
inşallah identity makale serinizi video serisi olarak görmek bana nasip olur
Rıfkı abimize selamlar olsun
patron ne kadar fedakar güzel insansın , her şeyden fedakarlık yapıp bu eğitimleri çekiyorsun, Allah razı olsun kardeşim.
Emeğiniz için teşekkürler
hocam bu aralar çok sık görür olduk sizi, emeklerinize sağlık.
@muhammedkaraca3860
Жыл бұрын
Gardaşım masaallah çekin ya allah alla nazar değerse sizi bulurum @2pac.😂😂♥️
Super bir video. Elinize sağlık. .net icin bootcamp tarzı bir şey dusunuyor musunuz? Mesela KZread canlı yayını ile.
Teşekkürler hocam🙏
Sabah sabah aç karnına iyi geldi.😃 Devamını bekliyoruz.
24.10.2022 izledim. Favorim Default Convertion 😅
Elinize ve ağzınıza sağlık hocam. Teşekkürler. 😊
Emeğinize sğalık hocam yine harika bir ders olmuş Son söylediklerinizde o kadar haklısınız ki ayrıca best practis yapacam diye katmanları yanlış kullanıp spagetti koddan daha kötü edenler de oluyor.
Ben FluentAPI'ı sevdim ama mantıklı bir sebebi yok, sadece havalı duruyor ve şu aşamada açıkçası elle yazmak bana mantığını anlamam açısından kolaylık sağladı. Tekrardan teşekkürler, emeğinize sağlıkkk
Жыл бұрын
Sebebi var. Konfigürasyonları harici kaynağa alıp yönetilebilir hale getiriyorsun. İleride daha da anlaşılacak.
@Furki4_4
Жыл бұрын
@ Default Convension iyi, güzel, basit ama çok ezber gibi geliyor :D Ama FluentAPI'da ipleri elime aldığımı hissediyorum. İlerde daha da anlaşılacaksa FluentAPI'dan devam edeyim, zaten çok sevdim.
Biz çocukken Komisyon kitapları vardı o geldi aklıma 30 yaş üstü olanlar iyi bilir :) emeğinize sağlık hocam . Hayat normale dönüyordur umarım🙏
Emeklerinize teşekkür ederim hocam, öğrenmeye devam.👋🙏
Diğer ilişkileri biliyordum ve daha önce kullanmıştım ama Many to many ilişkisi hakkında bir fikrim yoktu sayenizde bunu da çok iyi anlamış oldum. Çalışmağa devam pes etmek yok...
Çok yayarlı bir kaynak oluşturmuşsunuz. Başarılar dilerim.
Hüseyin Abi'ye selamlar. Bütün Hüseyin Abi'ler adamdır.
Emeğinize sağlık hocam.🙏
ünide gencay hoca gibi bir hocam olsa sırtım yere gelmez
Hocam sizin eğitim anlayışınız çok farklı. Tüm insanlık için çok faydalı biri olacağınızı düşünüyorum. Gerçekten samimi birisiniz. Kendi açınızdan öğrenme ve kendini geliştirme konulu video çekebilir misiniz? Ne tür kaynakları takip ediyorsunuz? Bizlere kitap tavsiyesinde bulunabilir misiniz.?
hocam yine ben geldim Lütfen bir api projesi içerisinde docker ile rabbitmq işlemlerini anlatacagınız bir eğitim çekin lütfennnnnnnn
@cenkozturk5396
Жыл бұрын
hocam mesajı beğenmişsiniz lütfen bu konu hakkında fikirlerinizi belirtir misiniz ?
Hocam teşekkür ederim harika bir anlatım olmuş. Kendi projemde bloglar ve kategoriler arasında da çoka çok ilişki kurmak istiyordum ve detayını öğrenmiş oldum.
Hocam ağzınıza sağlık. Kanala destek yorumudur.
Teşekkürler.
Hocam, yine lafınızı balla bölüyorum. Beni küçük bir tahminim var. List ve Icollection ile ilgili. Bence diğer collection türleride çalışacaktır. Çünkü tüm koleksiyonel türler hem ienumeratordan hem de IColection interfacesinden türemiş tipler olduğunu okumuştum makalede. Heralde o arayüzden türemiş olmasını yeterli görüyor çalışmak için. Gerçi böyle bişeye neden ihtiyaç duyayım orasıda ayrı 😅 çünkü fiziksel bağlam için kullağımız propertyleri sanırsam sadece generate ederken doğru kombinasyonda tetiklemek için kullanıyor. Aklımda deli sorular 🤔
Hocam default convention ne kadar güzelmiş birşeymiş. Data annotation ve Fluent API ile yazarken Python'dan C'ye geçermiş gibi hissettim :D . Bu arada hocam çok hızlısınız nerdeyse her gün video geliyor yetişmekte zorlanıyorum ama çok zevkli geçiyor. Teşekkürler
Жыл бұрын
Maşallah diyelim. Son günlerde yaşadığım olumsuz durumlara istinaden kafayı rahatlatmak ve odağı bozmak için videolara yüklendim :)
@hasangursoy5060
Жыл бұрын
@ Maşallah hocam. Samimi olarak söylüyorum çok dua mı aldınız devamı da yolda :D
Abone sayıları hızla artıyor hocam inşallah daha da iyi olacak
emeğinize sağlık hocam. Default Convention zaten kolay. Data Annotations'a gerek yok zannımca. Fakat fluent api için biraz daha tekrar etmem gerekecek ilişkisel derslerini. Yapısı pek oturmadı bende :D
mükemmeldi Elhamdülillah hocam
hocam emeklerinize sağlık çok teşekkürler birde nacizane bir sorum olacak web projelerinde(api veya mvc) authentication ve autherization kullanmak için(jwt dahil) illa identity bilmekmi gerekir(hiç anlamıyorum identity i ) alternatif çözümler ne olabilir identiy i ayrı bir seri olarak çekmenizi istesem çok mu şey istemiş olurum
keşke hiç çalışmasanız da maaşınızı her ay biz üyeleriniz versek :)
umarım Default Convention varken diğerlerlerini kullanmak zorunda kalmam... Emeğinize sağlık hocam
@ummuhankurt6566
Жыл бұрын
revize : Fluent API kullanmak daha iyi
Merhaba.... Lütfen bir kitap adına tıklattığımızda kitabın detaylarını (adını, yazarını, fiyatını) yani iki farklı tablodan detayların nasıl alınacağını anlatınız.
Öncelikle ders için çok teşekkürler. iki sorum olacak. 1 - Default Convention da navigation property leri kullanıyoruz. Fluent Api de navigation property leri kullanmamız gerekiyor mu. OnModelCreating metodunda ayarları yapıyoruz. 2 - Bazı kodları incelerken Entity nin constructor alanında HashSet şeklinde atamlar görüyoruz. Siz bu konuya değinmediniz. Bunun kullanımı çok önemli değil mi. Kullanılırsa Default Convention damı kullanılmalı.
Жыл бұрын
1. sorunun cevabı, evet. Kullanmanız gerekiyor. 2. sorunun cevabını ise sonraki derslerimizde vereceğim :) Tüm detayları yerinde incelemiş olacağız.
Teşekkürler hocam video çok güzel olmuş. Bir sorum var. Ben ilişkiyi direkt ef ye bıraktım gayet güzel çalıştı. Yalnız güncellemede hata alıyorum. Şöyle ki; Kitap sınıfının içindeki Yazar listesini değiştiriyorum. A yazarı zaten vardı, silip yerine B yazarını koydum listeye. Bu durumda güncelleme sonunda A yazarı ilişkiden silinmiyor. Yeni durumda liste A ve B yazarları olarak güncelleniyor. Yardımcı olursanız çok sevinirim.
makalelerinizde identity var biliyorum ama inanın anlaması video daki gibi olmuyo
Hocam, öncelikle emeğiniz için teşekkürler. Many to Many ilişki kurarken eger cross table-da Id adları convention-a uyğunsa (mesela BookId, AuthorId) Fluent API ile HasOne(), WithMany() yazmamıza ihtiyac varmı?
Жыл бұрын
Entity tanımlama kurallarına uyduğunuz taktirde gerek yoktur.
@tofigamraslanov
Жыл бұрын
@ tamamdır hocam bir daha teşekkür ederim.
@sadaharu_tr
Жыл бұрын
Ben de tam bunu soracaktım KitapId ve YazarId varken neden Fluent API'da tekrardan Context'te belirttik diye. Cevaplanmış.
.
it 64 bits cause my PC only allows 32 bits
Hüseyin ÖLMEZ mi, hocam?
Hocam merhabalar, Fluent Api uygulamasında, cross table yapısını manuel olarak oluşturmamız gerektiğini söylediniz ama kodu aşağıda gösterdiğim şekilde düzenlersek, cross table'ı manuel olarak oluşturmadan da aynı sonuca ulaşmış oluyoruz. Aşağıdaki kod yapısına başka bir içerikte rastlamıştım bu yüzden hatalı bir kullanım mı yapıyorum diye merak ettim. class Kitap { public int Id { get; set; } public string KitapAdi { get; set; } public List Yazarlar { get; set; } } class Yazar { public int Id { get; set; } public string YazarAdi { get; set; } public List Kitaplar { get; set; } } ... .. modelBuilder.Entity() .HasMany(x => x.Yazarlar).WithMany(x => x.Kitaplar) .UsingEntity("KitapYazarlarManyToMany", x => x.HasOne().WithMany().HasForeignKey("YazarId").HasConstraintName("YazarFK"), x => x.HasOne().WithMany().HasForeignKey("KitapId").HasConstraintName("KitapFK"));
Жыл бұрын
Eğer öyleyse yeni bir bilgi öğrendim sayenizde :) Teşekkürler.
@berk1854
Жыл бұрын
@ Estağfurullah hocam, asıl ben teşekkür ederim öğrettiğiniz her şey için :)