#5- Asp.NET Core 6 + Angular İle Mini E-Ticaret | Generic Repository Design Pattern

Поделиться
HTML-код
  • Опубликовано: 4 фев 2025
  • Github : github.com/gnc... #aspnetcore6 #angular #eticaret #aspnetcoreuygulama #onionarchitecture
    Bu video Gençay Yıldız tarafından NGAkademi bünyesinde ücretsiz çekilmiştir.
    Gençay Yıldız'ın Bloğu
    www.gencayyild...
    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

Комментарии • 127

  • @EropaKINGS
    @EropaKINGS 2 года назад +43

    Hocam, bu kadar ileri seviye konular için böylesine sağlam, detaylı ve anlaşılır bir kaynak olduğunuz için Allah sizden razı olsun.
    inşAllah Ramazan ayında da bu seri devam ediyor olur ve sahura kadar videolarınızdaki derin bilgilerden nasiplenmiş oluruz.
    Kesinlikle seviye olarak zirvelerde olacak bir eğitim serisi gibi görünüyor.
    Bu harika seriden sonra Design Pattern'ler konusundaki eğitim videolarınızı da beklemedeyiz.
    Emeklerinize sağlık.

  • @muzluballi
    @muzluballi Год назад +9

    Türk yazılımcılar için bir nimetsiniz hocam

  • @bayrameren4462
    @bayrameren4462 2 года назад +15

    IRead ve IWrite repository sini daha önce hiç bir repoda görmemiştim. Ufkumu açtınız valla teşekkürler

  • @mcecab
    @mcecab 2 года назад +9

    Hocam gerçekten de Allah sizden razı olsun. Yani kelimelerle anlatmak gerçekten çok zor, bunu da sizi övmek için falan söylemiyorum ama ciddi bir hizmet. Şu kadarını söyleyeyim; sizin derslerinizden sonra bir yerlere gelen ya da gelecek olan arkadaşların hepsinin üzerinde çok büyük haklarınız var. Derler ya, bi anne-babanın eli öpülür bi de hocanın. İşte siz eli öpülesi bir hocasınız... Çok teşekkür ederizzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz.

    • @mcecab
      @mcecab 2 года назад +4

      Bu arada sizin, ailenizin, sevdiklerinizin ve sizi takip eden tüm arkadaşlarımızın Ramazan Bayramı Mübarek olsun...

  • @Furki4_4
    @Furki4_4 2 года назад +4

    Dersler o kadar çok sarıyor ki teşekkür etmeyi unutuyorum. Ayrıca dün CQRS'i araştırıp kendi projemde MediatR kullanmıştım, ilk aklıma gelen query ile commandı, sizin deyişinizle write ve read'i ayırmak oldu. Repository Pattern'ı hiç uygulamamıştım, böyle uygulayınca gerçekten çok güzel oldu. Teşekkürler canım hocam.

  • @fatihsall6289
    @fatihsall6289 2 года назад +3

    Gençay Hocam RUclips da kolay kolay yorum yapmam hakikaten çok güzel içerikler oluşturuyorsunuz. Olayın mantığı gerçekten oturuyor. Teşekkür ederim emeğinize sağlık.

    •  2 года назад +2

      Teşekkür ederim, bol faydalar dilerim.

  • @taner-saydam
    @taner-saydam 2 года назад +2

    Teşekkürler.

  • @safakcivelek827
    @safakcivelek827 Год назад +1

    Hocam ağzınıza sağlık o kadar anlaşılır bir anlatımınız var ki dersler çok akıcı ve hızlı geçiyor.

  • @berat4935
    @berat4935 5 месяцев назад +1

    Adamin hammaddesisiniz hocam emeğinize sağlık videolarınızı izleyip de sıkılmak veya anlamamak mümkün değil

  • @semihatalay865
    @semihatalay865 2 года назад +7

    Bu ders o kadar yoğun bi içeriğe sahip ki, izledikten sonra beyninizi hissetmeyeceksiniz :D

  • @oguzylmaz6412
    @oguzylmaz6412 2 года назад +4

    Hocam tek kelimeyle kral bir adamsınız. Anladığımı hissedebiliyorum sonunda eğitim için teşekkür ederim :)

  • @onur5194
    @onur5194 2 года назад +4

    Çok detaylı anlatıyorsun. Kralsın

  • @husokanus
    @husokanus 2 года назад +5

    Günün özlü sözü: Aklın yolu birdir. Yazılım da akla uygun bir alan. Kodun akla uygun olmayınca kodu düzeltiyorsun, aklın koda uygun olmayınca aklın düzeliyor :) 50:00

  • @saidfaruk1477
    @saidfaruk1477 8 месяцев назад +1

    Bilader sen normal bi eğitimci değilsin fazlasısın... abone olup beğeniyi yapıştırdık..

  • @caglar_ylmz
    @caglar_ylmz 2 года назад +3

    Bu derslerin değeri ancak 3-5 yıl sonra anlaşılır.

    • @kaankoc7047
      @kaankoc7047 4 дня назад

      haklısınız. şuanda atılan her yorumun yanında 2 yıl önce yazıyor ama bilgiler hala çok güncel. Umarım bu videoları herkes izler ve hocamız böyle kapsamlı projeler yapmaya devam eder.

  • @muhammettarar9959
    @muhammettarar9959 2 месяца назад +1

    EMEĞİNİZE SAĞLIK HOCAM..........

  • @beyazbiyaz
    @beyazbiyaz 2 года назад +3

    Çok güzel bir çalışma olmuş. Bir de flutter uygulaması bekliyoruz, bu projenin devamı şeklinde de olabilir.

  • @oguz231
    @oguz231 2 года назад +1

    read ve write diye ayırmak bize fazla kalabalık getirdi gibi hocam. elinize sağlık

  • @atesali
    @atesali 2 года назад +19

    1.23 de olan hata controllerin Task olmamasından kaynaklanıyor. Controllerin void dönüş tipindeyken repository beklemiyor o yüzden ekleme işlemi yapmadan repository i dispose ediyor.
    Elinize sağlık.

    •  2 года назад +5

      Olabilir, göz atacağım.

    •  2 года назад +7

      Ali Ateş, haklısın kardeşim. Sonraki videolarda bu probleme değinecek ve ismen teşekkür edeceğim.

    • @atesali
      @atesali 2 года назад +7

      @ Rica ederim. Videolar için asıl ben teşekkür ederim.

    • @mcecab
      @mcecab 2 года назад

      çözüm ne peki?

    • @atesali
      @atesali 2 года назад

      @@furkanaydn588 Merhaba, daha önce buna benzer bir sorun yaşamıştım.

  • @aslanamca8225
    @aslanamca8225 2 года назад +8

    ORM'ler zaten repository ve unit of work patternlerini implement ediyor. Ef için konuşacak okursak DbContext'i unit of work ve DbSet'i repository olarak düşünebiliriz. Eğer proje de sadece ef kullanılacaksa ve ilerleyen zamanlar dapper gibi yapılara geçme ihtimali yoksa repository vs kullanmaya gerek yok. Fakat bu ihtimaller varsa o zaman repository pattern kullanılmalı yoksa direk ef ye bağımlı olursunuz ve dapper a geçince tüm ef kodlarını silmek zorunda kalırsınız. Bu da solid e ve özellikle open-closed principle'ye aykırı.

    • @BylrSadiqov
      @BylrSadiqov Год назад

      repository pattern yerine ne kullana biliriz bir onerin varmi?

  • @ozanakaydn3895
    @ozanakaydn3895 2 года назад +12

    Merhaba hocam,
    Async özelliği olmayan metotlar için
    await Task.Run(() => Table.Update(data));
    await Task.Run(() => Table.Remove(model));
    şeklinde kullanılabilinir.

  • @emreaka3965
    @emreaka3965 2 года назад +1

    Çok iyi gidiyor. Teşekkür ediyorum tekrardan.

  • @fatihdeniz3702
    @fatihdeniz3702 2 года назад +4

    Agzinize saglik hocam. Ben, sizin bahsettiginiz 1:15:50 deki Controller deki Contructor Injection Hell olayini, ortak DI lari BaseController da toplayarak cözüyorum. Ancak yine bazi controller lar üzerinden ortaklarin disinda 10 a yakin injection olabiliyor. Bu da can sıkıcı bir hal alabiliyor. Sizin cözümlerinizi merakla bekliyorum. Selamlar

  • @serdarzuliable
    @serdarzuliable Год назад +1

    Hocam parliament sevdiğini öğrendikten sonra gidip parliament aldım aşırı iyi hala beyaz paket olanından , makedonyada yaşıyorum ilerde ankaraya gelince sana da eski günlerini yaadetmen için bir paket getiriceğim :)

    •  Год назад +2

      Sigarayı 2018'de bıraktım. Eğer ki gerçekten eski günlerdeki parliament'i getirirsen, geldiğin gün sigaraya başladığım gün olur :)

  • @emreacikay1389
    @emreacikay1389 2 года назад +1

    Faydalı bir bölümdü, teşekkürler hocam.

  • @veyselhimmetoglu5714
    @veyselhimmetoglu5714 2 года назад +4

    Hocam video çekerken bile hazırlanıp gömlek vs şık oluyosunuz dikaktimi çekti ben olsam şort atlet olurdum 😂 teşekkürler emeğiniz için..

    •  2 года назад +1

      🤣

  • @tranhoanguc1436
    @tranhoanguc1436 9 месяцев назад +1

    I come from Vietnam. I completed the lesson 4/27/2024

  • @necilcakmak
    @necilcakmak Год назад +1

    49:40 await Task.Run(() => { Table.Remove(entity); }); async olur

  • @alimuhci2260
    @alimuhci2260 2 года назад +2

    Emeğinize sağlık Hocam

  • @emreerkan94
    @emreerkan94 2 года назад +4

    Bir de hocam CQRS ile anlatsanız tadından yenmez....

  • @OneDayMoonDay
    @OneDayMoonDay 3 месяца назад +1

    hocam ellerinize emeklerinize saglık gercekten ben böyle bir öğretim tarzı görmedim maşallah hocam size bu arada hocam twitch ya da başka bir platformdan yayın acıp kodlama,yazılım gibi şeyleri canlı yayın sırasında yapsak nasıl bir fikir olur sizce hem maddi olarak biraz getiri saglarsınız hem de o güzel bilgilerinizi bizlere aktarırsınız projeler yapıp beraber tartışabiliriz bu projeler hakkında bu yorumumua cevap verirseniz çok mutlu olurum fikirlerinizi merak ediyorum çünkü teşekkürler iyi çalışmalar dilerim.

  • @_mehmet
    @_mehmet 2 года назад +2

    Hocam o kadar iyisiniz ki anlatımda 2 kere yorum sildirdiniz 😂 Repository Patern ile ilgili.

  • @ekremkocak188
    @ekremkocak188 3 месяца назад +1

    Orkestra şefi && extraordinary

  • @ruzgarmuhendisi6173
    @ruzgarmuhendisi6173 2 года назад +1

    teşekkür ederiz. emeklerinize.

  • @Tahir-Guliyev
    @Tahir-Guliyev 2 года назад +1

    Teşekkür ederim, hocam!

  • @serhatkoroglu6708
    @serhatkoroglu6708 2 месяца назад +1

    1:14:14 AUTOFAC niye kullanmıyoz :D

  • @yazilimciyizBiz
    @yazilimciyizBiz 2 года назад +1

    11.11.2022 Uygulamalı izledim. #5- Asp.NET Core 6 + Angular İle Mini E-Ticaret | Generic Repository Design Pattern

  • @emnadgzel
    @emnadgzel 2 года назад +2

    elinize sağlık

  •  2 года назад +1

    AddSingleton değişikliği yapmadan sadece CreatedTime'a yazacağımız değeri now yerine UtcNow yapınca sorun çözüldü.

  • @yusufhayirsever
    @yusufhayirsever 2 года назад +1

    Emeğinize sağlık.

  • @mehmetkelleli8435
    @mehmetkelleli8435 2 года назад +1

    kral yemin ediyom mukemmelsin
    ayrıca sondaki sorunu addscop ile ıaction result liste cevirince sorun cozuluyor farklı olarak :)

    • @vusalmammadli712
      @vusalmammadli712 2 года назад

      Bana daha acik sekilde aciklaya bilirmisin rica etsem?

    • @mehmetkelleli8435
      @mehmetkelleli8435 2 года назад +1

      @@vusalmammadli712 void ile get arasına ıactionresult eklemek gerekli veri dönmesi için yanlış hatırlamıyorsam addsingleton olan yerlerde addscoop olmak zorunda bir sonraki videoda açıklaması yapılıyordu sanırsam

  • @ahmetsokmen9513
    @ahmetsokmen9513 Год назад +1

    Teşekkürler

  • @3N35
    @3N35 2 года назад +1

    Repository pattern çok fazla classı mevcut. O yapıyı ben 3 class a indirdim. Daha optimize daha az iş yükü var sırtımda.

  • @nevermind0627
    @nevermind0627 2 года назад +2

    merhabalar öncelikle emekleriniz için teşekekkürler Gençay Hocam bu projeye unit of work UoW de entegre edileceğinden bahsetmiştiniz, ilerleyen videolarda Ekleyecek misiniz? Saygılarımla,

  • @_mehmet
    @_mehmet 2 года назад +2

    Hocam 43:41 deki konuda id ye göre filtre yaparken ararken Ef nin find metodu var id parametresi alıyor onu kullansak olmaz mıydı? Arasındaki fark nedir?

    •  2 года назад +1

      Evet o daha iyi olur. Uykusuzluktan unutmuşum.

    • @_mehmet
      @_mehmet 2 года назад +1

      @ Hakkınız ödenmez hocam çok teşekkür ediyorum. BaseEntity olayını da öğrenmiş olduk.

    • @mcecab
      @mcecab 2 года назад +1

      Mehmet Bey, nasıl yapılıyor bu dediğiniz?

    • @ahmetdogantaranc7718
      @ahmetdogantaranc7718 Год назад

      @@mcecab _context.Set().Find(id);

  • @abdullahberber2538
    @abdullahberber2538 2 года назад +1

    Teşekkürler hocam

  • @enes0199
    @enes0199 Год назад

    12:55'te install package deyip öneren eklenti nedir hocam? Bende çıkmıyor

  • @nihatyavuz2206
    @nihatyavuz2206 2 года назад +2

    isimlendirme önerisi ICrudRepository , IQueryRepository

  • @burakbickioglu327
    @burakbickioglu327 2 года назад

    Hocam 55:33 de EntityEntry nesnesini oluştururken diğer metodlarda yaptığımızın aksine T tipi belirtmedik. Sebebini anlayamadım bilinçli olarak mı bu şekilde yaptık, öyle yaptıysak sebebi nedir ?

  • @ferdicuyar814
    @ferdicuyar814 Год назад

    Hocam cehaletimi hoş görürseniz size bir soru soracağım. BaseEntity sınıfına bir IBaseEntity interface i implement edersek onunda propertysi oluşturduğunuz classla aynı olacak; Repositorylerdeki T yi where T:IBaseEntity yapsak bu da çalışırmı? Yada kurduğum mantık yanlışsa niye yanlış? Henüz videonun 41. dakikasındayım

  • @can92oz
    @can92oz 2 года назад

    Hocam selamlar, Bir önceki migration vidyonuzda foreignkeyler gözükmüyordu ama entitylere eklemiştiniz simdide, customerId olmadan yolladınız productları. acaba sonradan sildiniz mi onu ben foreign key ile yolluyorum null olabilir yapıp cözdüm simdilik o key sorununu. Sizin postgrede sutunlarda göremedim customerId yi

  • @furkanisitan
    @furkanisitan 2 года назад +1

    Hocam öncelikle emeğinize sağlık. Çok güzel bir anlatım ve kalite var videolarınızda. Hakkınız ödenmez.
    Kafama takılan bir konu hakkında fikrinizi almak isterim.
    IRepository sınıfına DbSet eklediğimiz anda proje tamamiyle EFCore'a bağımlı olmuyor mu? Hatta sırf bu yüzden Application katmanına EFCore'u eklemek zorunda kalıyoruz.
    Örneğin MongoDB ile çalışmak istersek IRepository#Table property'sini nasıl implemente edeceğiz? Bu noktada repository pattern'in en büyük avantajı ortadan kalkmıyor mu?

    •  2 года назад +1

      Evet, haklısınız.

  • @theentein
    @theentein 2 года назад +1

    Hocam Controlleri da ProductsCrudController, ProductsQueryController yapsak nasıl olur?

  • @onuraydn5330
    @onuraydn5330 Год назад

    Hocam Genel olarak generic repository yaptıkdan sonra IoC yapılanmasından bu generic şeklinde bir nesne istesek. controller içerisindeki injection yapılan nesneye tipini verdikten sonra içeride kullansak. Daha az kod yazarak aynı işlemi yapmış olmazmıyız. Ana bir interface ve oradan türeyen concrete sınıflarından sonra her bir entity türü için bir daha yazmak gereksiz kalmıyor mu? Genericliğe aykırı gibi duruyor. Acaba onu yapmaksak kaybediceğimiz durumlar mı var?

  • @okanalagas5283
    @okanalagas5283 Год назад

    Hocam dakika 55 de söylediklerinize yönelik ; WriteRepository classında ReadRepository classından bir nesne türetip silinecek nesneyi ReadRepository classının GetByIdAsync metodu ile bulmak ne kadar doğru ve mantıklıdır ?

  • @mesutdemirci7933
    @mesutdemirci7933 2 года назад +1

    ağzınıza sağlık. getwhere fonksiyonunu kllanarak getirdiğimiz tablonun ilişkili olduğu tabloların verilerini de getiriyor mu getirmiyorsa daha hızlı getirmesini nasıl sağlarız bunun için ayrı bir methot tanımlasak olur mu.

    •  2 года назад +1

      Optimizeler yapacağız.

    • @cagrKARAYAKA
      @cagrKARAYAKA 2 года назад

      Mesut bey include ve select iceriden cekilen ilişkili tablolara sorgu atilabiliyor eğer orm yapiniz doğru ise hatta ıqueryable yapisi içinden bile atilabiliyor

  • @rnytpl
    @rnytpl Год назад

    Eksik paket yüklemeleri için Visual Studio otomatik önerme yapmıyor. Bu sorun bi tek bende mi var? Biraz araştırdım ama çözüm bulamadım

  • @resadmemmedov0035
    @resadmemmedov0035 Год назад

    Hocam merhaba. Öncelikle emeğinize sağlık. Şöyle bir sorum olucaktı; IRepository interface-in kullandığı DbSet bizi EFCore-a bağımlı hale getirmiyormu?. Eğer ilk başta EFCore-a bağımlı olacaksa proje direkt olarak DbContext sınıfını kullanmak daha karlı olmazmı? İleriki videoları izlemedim henüz lakin, şu anki yapının Repository design pattern-in avantajını ortadan kaldırdığını düşünüyorum. Düşünceleriniz nelerdir? Tekrardan emeğinize sağlık.

  • @yazilimciyizBiz
    @yazilimciyizBiz 2 года назад +1

    59:45

  • @omeresinyildiz
    @omeresinyildiz 2 года назад

    Hocam selamlar. IReadRespository ve IWriteRepository interfaceleri out T ve in T olarak ayirsak boylece o kisimlara da bir sinirlama getirsek olur muydu? Write islemlerinde geri donus yapmayacaginizi varsaydim tabiki.

  • @ergun-karakus
    @ergun-karakus 2 года назад +1

    Hocam 50-100 arası tablom olduğunu varsayarsak , bu yaklaşımdaki gibi her bir tablo için 4 adet dosya oluşturmak göz korkutuyor. 50 tablo için Her bir Entity e özel interface ve concrete oluşturmak demek 200 dosya eder.
    Bu yöntemde bu kadar dosya açmadan başka bir yol var mıdır acaba?

    •  2 года назад

      Birbirleriyle alakalı entitylerin bir bütünlük oluşturabilmesi, tutarlı olabilmesi ve iş kurallarını ya da akışlarını gerçekleştirebilmesi için bir arada kullanılmasını ifade eden Aggregate Root class'larına özel repository'leri sınıflarınızı oluşturabilir ve lüzumsuz maliyetlerden kodu/projeyi arındırabilirsiniz.
      Bu konuya dair şu makalemi incelemenizi öneririm: www.gencayyildiz.com/blog/domain-driven-design-stratejik-ve-taktiksel-olarak-derinlemesine-inceleme/

  • @tungnguyenkhanh6697
    @tungnguyenkhanh6697 Год назад +1

    quá hay, dễ hiểu

  • @cagrKARAYAKA
    @cagrKARAYAKA 2 года назад

    Agziniza sağlık hicam ve bisey sormak istiyorum ben repository desing patterni unit of work paterni ile kullaniyorum simdi hem read hemde write unit of work u olusturmaliyim doğrusu nedir

  • @ahmetayyildiz_0
    @ahmetayyildiz_0 2 года назад +1

    Hocam selamla lütfen cevaplar mısınız. Bu eğitim öncesine entitu framewotk çalışmalı mıyız temelde çok az biliyoruz eğitime ona göre başlamak istiyorum

    •  2 года назад

      Yani temellerini ve Code First yaklaşımını bilmek yeterli.

  • @burakbickioglu327
    @burakbickioglu327 2 года назад

    Hocam merhaba.
    public DbSet Table => _context.Set();
    yazdığımız satırda context.set kısmının ne işe yaradığını biliyorum ancak => lambda expression unun buradaki işlevi nedir anlayamadım. Table property' sinin içerisine _context.Set(); den döneni setlemeye mi yarıyor acaba ?

  • @matson_0286
    @matson_0286 2 года назад

    Merhabalar. Bu güzel ve detaylı anlatımınız için teşekkürlər hocam. Şöyle bir sorum vardı- Her bir entitynin İd sini GUİD olarak tutmaya biliriz. Birinin İD si identity olarak kalmasi gereke bilir. Bu zaman GetByİd() methodunda nasil bir uyqulama gerçekleştire biliriz?
    2 ayri BaseEntity yaratsak zaten Constraint e 2 class aynı anda veremiyoruz,

    •  2 года назад

      '... Birinin İD si identity olarak kalması gereken bilir ...' cümlenizdeki identityden kastınız nedir?

    • @matson_0286
      @matson_0286 2 года назад

      @ integer typedan ola bilir misal. Identity den kastimda sirali olaraq 1-1 artmasidir.
      Yani: bir Entitinin Id-si Guid type-dan olarken diğer bir entitinin Id-si integer type yapa bilmek icin nasıl bir değişilik yapa biliriz.

    • @veyselhimmetoglu5714
      @veyselhimmetoglu5714 2 года назад +1

      overload edilebilir

  • @MrJoker967
    @MrJoker967 Месяц назад

    hocam internette aktifmisiniz suab

  • @burakozturk419
    @burakozturk419 2 года назад +1

    47:20 de kaldım.

  • @10urd
    @10urd 2 года назад

    Hocam merhaba,
    Ben veritabanı kısmında MSSQL kullanıyorum. Veriler veritabanına eklenirken koddaki sıra ile eklenmedi. Sizde 2-1-3 sırasıyla, bende 3-2-1 sırasıyla eklendi. Tam nedeni nedir acaba?

  • @MultiSynchron
    @MultiSynchron Год назад

    System.InvalidOperationException: Unable to resolve service for type 'ETicaretAPI.Application.Repositories.IProductWriteRepository' while attempting to activate 'ETicaretAPI.API.Controllers.ProductsController'.
    Hatasi aliyorum swaggerde execute dedigimde hocam cok baktim ama bulamadim birebir ayni yazdigim halde boyle bir sorun aliyorum nasil duzeltebilirim ?

    • @salimcetinkaya58
      @salimcetinkaya58 Год назад

      ServiceRegistration ı kontrol edin yanlış bir bağ kurmuş olabilirsiniz.

  • @cenkozturk5396
    @cenkozturk5396 2 года назад

    hocam bu IReadRepository icerisin de expression func t bool method kodlarını yazdık amacta customize etmek okey bunda sorun yok lakin biz bunu ornek veriyorum ardalis librarysını kullanarak specification yazarak istedigimiz sekilde getirtebiliriz o sorguları neden bunu bir interfacenın ıcın de yapıyoruz anlayamadım

    •  2 года назад

      Örnek gösterebilir misiniz?

    • @cenkozturk5396
      @cenkozturk5396 2 года назад

      @ s

  • @muhammettarar9959
    @muhammettarar9959 2 месяца назад

    Hocam bu arada niçin AutoFac veya Ninject kullanmadık .d

  • @gokayguler8391
    @gokayguler8391 2 года назад +4

    hocam autofac niye kullanmıyoruz :)))

    •  2 года назад +6

      🤣

    • @emreaka3965
      @emreaka3965 2 года назад

      IoC için diyorsan built in olan şu anda işimizi görüyor. Görmediği kısma kadar ilerler miyiz bilmiyorum ki ilerlersek kullanılırız herhalde.

  • @lastidea4925
    @lastidea4925 2 года назад

    Hocam bazi kaynaklarda "Repositories should not have Update method" gibi maddeler var ne dusunuyorsunuz bu konuda?

    •  2 года назад +1

      Bence opsiyonel çünkü change tracker'ın track ettiği objeleri 'get' fonksiyonlarıyla elde ettikten sonra update işlemine tabi tutabilirsiniz lakin track edilmeyen objelere update sorguları generate edebilmek için repository içerisinde 'Update' vari bir fonksiyona ihtiyacınız olabilir.

  • @0xHmacX
    @0xHmacX 2 года назад

    Hocam DbContext ide generic olarak versek olur mu?

  • @ugurturgut6723
    @ugurturgut6723 Год назад

    videolar sadce bende mi oluyor acaba sürekli ses kesilmesi yaşıyorum

    •  Год назад +2

      Sadece sende güzel kardeşim.

  • @mcecab
    @mcecab 2 года назад

    neden string id? 25:30

    • @oguzhaniscan956
      @oguzhaniscan956 Год назад

      id lerimizi tanımlarken int türünden tanımlamadık, id nin veri türü guid içerisinde harf de bulunduruyor

  • @berkaydogan5668
    @berkaydogan5668 2 года назад

    design pattern eğitimi için 5 tl lik katıl aboneliği yeterli mi hocam?

    •  2 года назад +1

      🙃ilgili eğitimler için gerekli seviyelerin ne olduğu oynatma listesine tıklayınca öğrenilebilmekte.

  • @nocopyrightgameplay4791
    @nocopyrightgameplay4791 Год назад

    Hocam aklıma takılan bir soru var bu Ahmet kim ? Aranızda alacak verecek meselesi mi var ? Sürekli aklınızda mübarek😁

  • @diary3613
    @diary3613 10 месяцев назад +1

    emektar bilgisayar sen benden daha yorgunsun kusura bakma asasdsfsdfs

  • @abdullahavsar641
    @abdullahavsar641 6 месяцев назад +1

    .

  • @eyupkahraman3886
    @eyupkahraman3886 2 года назад

    Hocam merhaba. dakika: 38:29 da yapılan işlemleri yapınca table.where(method) yazdıktan sonra method kısmının altını çiziyor ve hata veriyor. hata mesajı:
    Severity Code Description Project File Line Suppression State
    Error CS1503 Argument 2: cannot convert from 'EticaretAPI.Application.Repositories.Exception' to 'System.Threading.CancellationToken' EticaretAPI.Persistance C:\Users\T480_Home\Desktop\E-Ticaret Uygulamasi\EticaretAPI\Infrastracture\EticaretAPI.Persistance\Repositories\ReadRepository.cs 32 Active
    aradım ama çözemedim yardımcı olursanız sevinirim :)

  • @Bilemezdim
    @Bilemezdim Год назад

    Hocam ben sırayla izlemeye başladım da videolarınızı videoda dediğiniz Generic repository'e karşı çıkanlar oluyor vesayire... Bende şimdi kuşkuya girdim kurumsalda falan patlamayalım bu design pattern hala kullanılıyor mu ? Çünkü diyelim 100 tane class var 100 class için mi ICustomerRepository,IProductRepository ....... devam edecek mi

  • @AliCanYucel-bo4yo
    @AliCanYucel-bo4yo 2 месяца назад

    System.InvalidOperationException: Unable to resolve service for type 'ETicaret.Application.Repositories.IProductWriteRepository' while attempting to activate 'ETicaret.API.Controllers.ProductsController'.
    at Microsoft.Extensions.DependencyInjection.ActivatorUtilities.ThrowHelperUnableToResolveService(Type type, Type requiredBy)
    at lambda_method3(Closure, IServiceProvider, Object[])
    at Microsoft.AspNetCore.Mvc.Controllers.ControllerFactoryProvider.c__DisplayClass6_0.g__CreateController|0(ControllerContext controllerContext)
    at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
    at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeInnerFilterAsync()
    --- End of stack trace from previous location ---
    at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|20_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
    at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
    at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
    at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
    at Swashbuckle.AspNetCore.SwaggerUI.SwaggerUIMiddleware.Invoke(HttpContext httpContext)
    at Swashbuckle.AspNetCore.Swagger.SwaggerMiddleware.Invoke(HttpContext httpContext, ISwaggerProvider swaggerProvider)
    at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
    at Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddlewareImpl.Invoke(HttpContext context) bu hatsayı veriyor ders 5

  • @mustafazeren4950
    @mustafazeren4950 2 года назад +1

    Request sonucunda
    Microsoft.EntityFrameworkCore.DbUpdateException: An error occurred while saving the entity changes. See the inner exception for details.
    ---> System.InvalidCastException: Cannot write DateTime with Kind=Local to PostgreSQL type 'timestamp with time zone', only UTC is supported. Note that it's not possible to mix DateTimes with different Kinds in an array/range. See the Npgsql.EnableLegacyTimestampBehavior AppContext switch to enable legacy behavior.
    şeklinde başlayan uzun bir hatayla karşılaşanlar olursa eğer Persistence altındaki Contexts klasöründe bulunan ECommerceAPIDbContext sınıfının Constructor metoduna aşağıdaki iki satırlık kodu yapıştırarak bu sorunu çözebilir
    AppContext.SetSwitch("Npgsql.EnableLegacyTimestampBehavior", true);
    AppContext.SetSwitch("Npgsql.DisableDateTimeInfinityConversions", true);

  • @korayer35
    @korayer35 2 года назад +2

    Teşekkürler.

  • @hakanyavas5486
    @hakanyavas5486 Год назад +1

    Teşekkürler hocam, elinize sağlık

  • @emregecer1216
    @emregecer1216 Год назад +1

    Emeginize saglik hocam

  • @mehmetsimsek260
    @mehmetsimsek260 Год назад

    Hocam öncelikle emeğinize sağlık.
    IRepository sınıfına DbSet eklediğimiz anda proje tamamiyle EFCore'a bağımlı kalmış olmuyor muyuz?
    Farklı bir veri tabanı ile çalışmak istersek IRepository#Table property'sini nasıl implemente edeceğiz?
    IReadRepository ve IWriteRepository de ctor'da oluşturduğumuz ETicaretDbContext' i veriyoruz. Bu da uygulamaya farklı bir veritabanı eklememizi engellemiş olmuyor mu? Generic olarak DbContext' ten constrain edilmiş bir TContext sınıfı vermemiz daha doğru olmaz mıydı?

    • @yazilimciyizBiz
      @yazilimciyizBiz Год назад

      Merhaba, hocamız Contexts diye dosya açtı. orda vurguladı farklı Contextler ola bilir diye. Değiştireceğimiz yer çok fazla değil. (Bu sadece bir Yorum, yanıldıysam affola)