• 21-06-2015, 13:49:35
    #1
    Üyeliği durduruldu
    N-Tier mimarisinde ado.net kulanıyordum. Entity Framework'e geçiş yapınca bir konuda takıldım.

    Entity Katmanında propertyleri yazdım.Connection adında ise db connection classı var.
    Faced Layer Katmanında ise normalde şu şekil basit bir insert methodum vardı.

    public static int Insert(ECategory item)
    {
    
    SqlCommand com = new SqlCommand("Category_Insert",Connection con);
    com.CommandType = CommandType.StoredProcedure;
    com.Connection.Open();
    com.Parameters.AddWithValue("Name",item.Name);
    return com.ExecuteNoneQuery();
    }
    aynı bu yapıya göre Entity Framework kullanısak bu Insert methodu nasıl olmalı. ve önerilerinizi alabilirmiyim arkadaşlar ?
  • 21-06-2015, 18:32:16
    #2
    stored procedureler EF de fonksiyon olarak görülürler.. yani contextini şu şekilde çağırabilirsin

    var context = new SeninContext();

    context.Category_Insert(item.Name);
  • 21-06-2015, 22:43:16
    #3
    Üyeliği durduruldu
    ertan2002 adlı üyeden alıntı: mesajı görüntüle
    stored procedureler EF de fonksiyon olarak görülürler.. yani contextini şu şekilde çağırabilirsin

    var context = new SeninContext();

    context.Category_Insert(item.Name);
    anladım. peki sanırım db first'te table, viewleri seçtiğimiz gibi stored procedureları seçerek projeye dahil edip, fonksiyon gibi kullanabiliyoruz. şayet öyle ise. codefirst yaklaşımında nasıl projeye include edebiliriz prosedürleri ertan hocam ?
  • 22-06-2015, 01:43:01
    #4
    codefirst ile neden uğraşıyorsun ki hocam
    işler biraz daha karışık ama neyse

    burada çok detay var

    https://msdn.microsoft.com/en-us/data/dn468673
    adım adım uygula.. öncelikle bu proje üzerinden gidip yapmaya çalış, başarabildikten sonra kendi projene uygularsın..

    mantık olarak oluşturduğun direk db class ı üzerinden erişim yapıyorsun

    http://stackoverflow.com/a/25429030

    burada basit bir örnek var..

    ama en temizi bana göre dbfirst yaklaşımı ya da en azından ben hep bu şekilde kullanıyorum.. Tabi codefirst de çok favori bir kullanıma sahip ama direk db üzerinden gitmek ado.net den gelen bir alışkanlık bende
  • 22-06-2015, 08:10:17
    #5
    Üyeliği durduruldu
    aynen öyle hocam bende ado.net - webform yüzünden .net'e başlamıyordum.elimle manuel kontrol etmek istiyordum. Herşey entityframework, codefirst yaklaşımını görene kadardı
    İşin içerisine fonksiyonlar,prosedürler, view'lar girince hoppala dedim stackte verdiğiniz örnek te tam cevaptı teşekkür ederim.
  • 23-06-2015, 12:50:25
    #6
    Entity Framework ile çalışırken sp kullanmak size anca külfet olur. Çok kompleks işlemler yoksa insert update gibi işlemler için sp kullanmayın. Performans için kullanıyosanız çok ahım şahım şeyler farketmiyo Performans önceliğinizse zaten ef yerine hatta sql server yerine nosql çözümlere bakmak daha mantıklı olur.
  • 23-06-2015, 13:34:55
    #7
    Üyeliği durduruldu
    OguzK adlı üyeden alıntı: mesajı görüntüle
    Entity Framework ile çalışırken sp kullanmak size anca külfet olur. Çok kompleks işlemler yoksa insert update gibi işlemler için sp kullanmayın. Performans için kullanıyosanız çok ahım şahım şeyler farketmiyo Performans önceliğinizse zaten ef yerine hatta sql server yerine nosql çözümlere bakmak daha mantıklı olur.
    sadece örnekti de ef de sp için daha basit kullanısşı bir yolu yokmu (codefirst) için bilginiz varmı ? büyük proje geliştirirken ve entity framework kullanıyorsanız nasıl hangi yöntemler kullanılıyor onu merak ediyorum.
  • 23-06-2015, 13:43:32
    #8
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Büyük proje yapacaksan repository pattern kullanmanı tavsiye ederim.
    Stored procedure'ler genelde düzenlemezsen complex type olarak geri dönüş değeri alırlar. Eğer düzenlemediysen entity'e göre düzenle.
    http://www.entityframeworktutorial.n...framework.aspx

    ps: ef'nin yeni sürümünde db first kalkıyor. Bildiğim kadarıyla db first çalışanlar için hala bir çözüm üretmediler, bakalım ne olacak.
  • 23-06-2015, 13:51:58
    #9
    Üyeliği durduruldu
    rob33n adlı üyeden alıntı: mesajı görüntüle
    Büyük proje yapacaksan repository pattern kullanmanı tavsiye ederim.
    Stored procedure'ler genelde düzenlemezsen complex type olarak geri dönüş değeri alırlar. Eğer düzenlemediysen entity'e göre düzenle.
    http://www.entityframeworktutorial.n...framework.aspx

    ps: ef'nin yeni sürümünde db first kalkıyor. Bildiğim kadarıyla db first çalışanlar için hala bir çözüm üretmediler, bakalım ne olacak.
    Aynen repository pattern kullanmaya başladım. db first tarafında daha dogrusu o kadar büyük bir proje değilde işimizi hızlandırması acısından sp kullanıyordum.doğru yaptıgımdan bir kez daha emin olmuş oldum önerin için çok teşekkür ederim.

    Entity Framework yeni sürümünde db first'ün kalkacağını yazmışsınız ilk defa sizden duyuyorum. sizinki bir duyummu yoksa yayınlanmış bir habermi.