Şimdi Ara

MVC ile ilgili yardım

Bu Konudaki Kullanıcılar:
2 Misafir - 2 Masaüstü
5 sn
15
Cevap
0
Favori
654
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • merhaba arkadaşlar webformcu orlak mvc yeni ilgi alanım home controllerde söyle bir yapım var

    SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString);
    public List<DataRow> list { get; set; }
    public PagedList<DataRow> plist { get; set; }

    // GET: Home
    public ActionResult Index(int? page)
    {

    SqlCommand cmd = new SqlCommand("select * from Videolar",con);
    SqlDataAdapter dr = new SqlDataAdapter(cmd);
    DataTable dt = new DataTable();
    dr.Fill(dt);

    list = dt.AsEnumerable().ToList();

    plist = new PagedList<DataRow>(list, page ?? 1, 5);
    return View(plist);

    }
    ben plist ile return ettigim pagelistti ve list'e doldurdugum dt adlı datatablemi view yapsında nasıl kullanabilirim ? hergangi bir class yapım yok



    < Bu mesaj bu kişi tarafından değiştirildi Parola_18 -- 30 Ocak 2017; 15:48:55 >



  • View'de en üste @model System.Data.DataTable
    @using System.Data; bunu ekle.

    View içinde Model. diyerek kullanınca çalışması gerekiyor denemedim.

    View'e datatable dönmek çok yanlış. View'e döneceğiniz her şeyi model yapmaktan çekinmeyin. Fazla modelden zarar gelmez. Datatable'ı unutun kısaca.

    Ek olarak EntityFramework/linq gibi bir orm araştırırsanız mvc'nin yanında çok iyi olur. İş hayatında datatable vs. hiç görmeyeli 3 yıl oldu neredeyse. Artık hiç kullanılmıyor.

    Bunun yerine
    SqlCommand cmd = new SqlCommand("select * from Videolar",con);
    SqlDataAdapter dr = new SqlDataAdapter(cmd);
    DataTable dt = new DataTable();
    dr.Fill(dt);
    list = dt.AsEnumerable().ToList();


    Bunu kullanabilirsin.
    //db yi nasıl tanımlayacağını entity framework'de görürsün.
    var s= db.Videolar.ToList();// Videolar tablosunu çeker
    var s= db.Videolar.FirstorDefault(); // ilk kaydı getirir.
    var s =db.Videolar.Where(t=>t.Id=3); // id'si 3 olan kaydı getirir.
    var s =db.Videolar.Take(5); // İlk 5 kaydı getirir.


    gibi tek satırlık çok sabit kullanımı var.



    < Bu mesaj bu kişi tarafından değiştirildi netcore -- 1 Şubat 2017; 2:52:50 >
  • eyvallah dostum halletmiştim sorunumu model yapısısı table ile aynı sonuçta 2 side benzer yapıları döndürüyor her veri tabanı tablosu için sınıf hazırlamak amelelik ve boşa iş yükü geldi bana
    EntityFramework model yapsı güzel ve kolay ama o ada performansı düşüren bir yapı şimdilik adonet seçenekleri güzel bildigim bir konu agırlıklı ordan yürüyecegim



    < Bu mesaj bu kişi tarafından değiştirildi Parola_18 -- 1 Şubat 2017; 10:51:31 >
  • Entity framework yerine ado.net mvc kullanırsanız projeniz daha yönetilebilir olur.
    http://www.compilemode.com/2015/09/crud-operations-in-aspnet-mvc-5.html adresinde güzel bir örnek var.
  • quote:

    Orijinalden alıntı: infinity000

    Entity framework yerine ado.net mvc kullanırsanız projeniz daha yönetilebilir olur.
    http://www.compilemode.com/2015/09/crud-operations-in-aspnet-mvc-5.html adresinde güzel bir örnek var.

    öle yapıyorum zaten ado net direkt sql sorgusu yapıyor işin kolayına kaçmak entity
  • quote:

    Orijinalden alıntı: Parola_18


    quote:

    Orijinalden alıntı: infinity000

    Entity framework yerine ado.net mvc kullanırsanız projeniz daha yönetilebilir olur.
    http://www.compilemode.com/2015/09/crud-operations-in-aspnet-mvc-5.html adresinde güzel bir örnek var.

    öle yapıyorum zaten ado net direkt sql sorgusu yapıyor işin kolayına kaçmak entity


    < Bu ileti mobil sürüm kullanılarak atıldı >
  • quote:

    Orijinalden alıntı: Parola_18


    quote:

    Orijinalden alıntı: infinity000

    Entity framework yerine ado.net mvc kullanırsanız projeniz daha yönetilebilir olur.http://www.compilemode.com/2015/09/crud-operations-in-aspnet-mvc-5.html adresinde güzel bir örnek var.

    öle yapıyorum zaten ado net direkt sql sorgusu yapıyor işin kolayına kaçmak entity

    Kolayına kaçmaksa framework kullanma al c ile bastan bi http listenir yaz. IIS işin kolayına kaçmaktır. Ordan sonra body parse et. yürü kendi dilini yaz ilerle. sonra refactoring olarak da işletim sistemi yaz bence. os kullanmakta kolayına kaçmak.

    Ben sadece ado.net biliyorum de bari.

    Yazılım bir üretimdir. Üretimde verimlilik önemlidir. Amerikayı yeniden keşfetmeye gerek yok. Bunu niye yazyorum. Suradan bir bilmeyen gelecek bunu okuyup ya orm kolayına kaçmakmıs falan diyecek. Yanlış bilgi yayılmasın. Tercih etme ve etmeme sebebimiz bu değil.

    MVC yapıp sonra DataTable göndermek aşırı saçma. Web form kullanın bari. Mantığına ters. Siz view e "MODEL" göndermelisiniz.
    bence siz bir buradan baslayın.https://www.asp.net/mvc



    < Bu mesaj bu kişi tarafından değiştirildi mahoni_38 -- 3 Şubat 2017; 14:23:4 >
  • quote:

    Orijinalden alıntı: mahoni_38


    quote:

    Orijinalden alıntı: Parola_18


    quote:

    Orijinalden alıntı: infinity000

    Entity framework yerine ado.net mvc kullanırsanız projeniz daha yönetilebilir olur.http://www.compilemode.com/2015/09/crud-operations-in-aspnet-mvc-5.html adresinde güzel bir örnek var.

    öle yapıyorum zaten ado net direkt sql sorgusu yapıyor işin kolayına kaçmak entity

    Kolayına kaçmaksa framework kullanma al c ile bastan bi http listenir yaz. IIS işin kolayına kaçmaktır. Ordan sonra body parse et. yürü kendi dilini yaz ilerle. sonra refactoring olarak da işletim sistemi yaz bence. os kullanmakta kolayına kaçmak.

    Ben sadece ado.net biliyorum de bari.

    Yazılım bir üretimdir. Üretimde verimlilik önemlidir. Amerikayı yeniden keşfetmeye gerek yok. Bunu niye yazyorum. Suradan bir bilmeyen gelecek bunu okuyup ya orm kolayına kaçmakmıs falan diyecek. Yanlış bilgi yayılmasın. Tercih etme ve etmeme sebebimiz bu değil.

    MVC yapıp sonra DataTable göndermek aşırı saçma. Web form kullanın bari. Mantığına ters. Siz view e "MODEL" göndermelisiniz.
    bence siz bir buradan baslayın.https://www.asp.net/mvc


    yaşın kaç program tecrüben endir bilmiyorum "MVC yapıp sonra DataTable göndermek aşırı saçma." sen bir veriyi view 'e göndermek için datatable ile aynı şeyi yapıyorsun sınıf oluştur list de dön gönder datatable daha kolay ve performanslı model yapısını kullanacaksın diye bir kuralmı var ? ado net dql sorgusunu kullanması bir yana adonet sınıfı microsoft'un kendi sınıfı neden orjinali varken başka sınıfları kullanim bumu programcılık anlayışı ? sen çok zekisinde microsoft çok mu akılsız adonet'e izin veriyor mvc de ?
  • mahmutgundogdu.wordpress.com cok merak ediyorsan gir incele. 2007 den beri gelisticiyim ve .net 2.0 dan beri de Microsoft Certified Professional Developer unvanina sahibim.

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • quote:

    Orijinalden alıntı: mahoni_38

    mahmutgundogdu.wordpress.com cok merak ediyorsan gir incele. 2007 den beri gelisticiyim ve .net 2.0 dan beri de Microsoft Certified Professional Developer unvanina sahibim.

    sen bana worldpress gösteriyorsun

    http://www.aspnetturkiye.com/Anasayfa

    bende 6 senedir geliştiriciyim vem mcsa serfifikam var ne olacak şimdi ?



    < Bu mesaj bu kişi tarafından değiştirildi Parola_18 -- 3 Şubat 2017; 14:40:14 >
  • Bir şey olmayacak. Kimle muhattap olduğumu bileceğim.
    Örnek: Veritabanı değilde bir json kullandığımızı hayal edelim. Simdi text okuyup view back ile gönderip model olarak JsonSerilizator gönderip bunu viewde parse etmemize microsoft engel olmuyor diye bu doğru mudur? MVC bir patern. paterinin de kuralları var. Buna neden uymalıyız? Cünkü uymazsak patern olmaz.

    MVC deki M MODEL demek ve evet mvc kullancaksan model kullanacaksın diye bir kural var.
    DataTable ile bana model validation örneği gönderir misin?
    Modelin tek amacı veri taşımak değil
    ModelState.IsValid diye serverside ve clientside validation da görevleri var.
    Tahminimce post datasını FormCollection olarak alıyorsunuz. Lakin model ile alabilirsiniz. Genelde de öyle yapılıyor.
    MVC ile ilgili yardım

    Böyle yaptığınzıda hardcodden parseden kurtulursunuz. Peki DataTable ile bunu yapabiliyor muyuz?
    MODEL iki yönlü çalışıyor. Siz DataTable kullanmaya devam edebilirsiniz. Lakin bir tane resmi sayfada tavsiyesini bulamazsınız. Örneğini bile bulamadım.
  • quote:

    Orijinalden alıntı: Parola_18


    quote:

    Orijinalden alıntı: mahoni_38


    quote:

    Orijinalden alıntı: Parola_18


    quote:

    Orijinalden alıntı: infinity000

    Entity framework yerine ado.net mvc kullanırsanız projeniz daha yönetilebilir olur.http://www.compilemode.com/2015/09/crud-operations-in-aspnet-mvc-5.html adresinde güzel bir örnek var.

    öle yapıyorum zaten ado net direkt sql sorgusu yapıyor işin kolayına kaçmak entity

    Kolayına kaçmaksa framework kullanma al c ile bastan bi http listenir yaz. IIS işin kolayına kaçmaktır. Ordan sonra body parse et. yürü kendi dilini yaz ilerle. sonra refactoring olarak da işletim sistemi yaz bence. os kullanmakta kolayına kaçmak.

    Ben sadece ado.net biliyorum de bari.

    Yazılım bir üretimdir. Üretimde verimlilik önemlidir. Amerikayı yeniden keşfetmeye gerek yok. Bunu niye yazyorum. Suradan bir bilmeyen gelecek bunu okuyup ya orm kolayına kaçmakmıs falan diyecek. Yanlış bilgi yayılmasın. Tercih etme ve etmeme sebebimiz bu değil.

    MVC yapıp sonra DataTable göndermek aşırı saçma. Web form kullanın bari. Mantığına ters. Siz view e "MODEL" göndermelisiniz.
    bence siz bir buradan baslayın.https://www.asp.net/mvc


    yaşın kaç program tecrüben endir bilmiyorum "MVC yapıp sonra DataTable göndermek aşırı saçma." sen bir veriyi view 'e göndermek için datatable ile aynı şeyi yapıyorsun sınıf oluştur list de dön gönder datatable daha kolay ve performanslı model yapısını kullanacaksın diye bir kuralmı var ? ado net dql sorgusunu kullanması bir yana adonet sınıfı microsoft'un kendi sınıfı neden orjinali varken başka sınıfları kullanim bumu programcılık anlayışı ? sen çok zekisinde microsoft çok mu akılsız adonet'e izin veriyor mvc de ?

    Allahınızı severseniz bana bir söyleyin ADO.net microsoftun da EntityFramework kimin? Bu zeka değil bu bilgi.https://www.asp.net/mvc girin bakın anlatımlara. Hayır madem asp.net MVC guru idiniz neden gelip soruyorsunuz. Soruyorsunuz cevap veriyoruz. Fanatizm yapıyorsunuz. DataTable siz yazsanız bu kadar korumazdınız
  • quote:

    Orijinalden alıntı: mahoni_38


    quote:

    Orijinalden alıntı: Parola_18


    quote:

    Orijinalden alıntı: mahoni_38


    quote:

    Orijinalden alıntı: Parola_18


    quote:

    Orijinalden alıntı: infinity000

    Entity framework yerine ado.net mvc kullanırsanız projeniz daha yönetilebilir olur.http://www.compilemode.com/2015/09/crud-operations-in-aspnet-mvc-5.html adresinde güzel bir örnek var.

    öle yapıyorum zaten ado net direkt sql sorgusu yapıyor işin kolayına kaçmak entity

    Kolayına kaçmaksa framework kullanma al c ile bastan bi http listenir yaz. IIS işin kolayına kaçmaktır. Ordan sonra body parse et. yürü kendi dilini yaz ilerle. sonra refactoring olarak da işletim sistemi yaz bence. os kullanmakta kolayına kaçmak.

    Ben sadece ado.net biliyorum de bari.

    Yazılım bir üretimdir. Üretimde verimlilik önemlidir. Amerikayı yeniden keşfetmeye gerek yok. Bunu niye yazyorum. Suradan bir bilmeyen gelecek bunu okuyup ya orm kolayına kaçmakmıs falan diyecek. Yanlış bilgi yayılmasın. Tercih etme ve etmeme sebebimiz bu değil.

    MVC yapıp sonra DataTable göndermek aşırı saçma. Web form kullanın bari. Mantığına ters. Siz view e "MODEL" göndermelisiniz.
    bence siz bir buradan baslayın.https://www.asp.net/mvc


    yaşın kaç program tecrüben endir bilmiyorum "MVC yapıp sonra DataTable göndermek aşırı saçma." sen bir veriyi view 'e göndermek için datatable ile aynı şeyi yapıyorsun sınıf oluştur list de dön gönder datatable daha kolay ve performanslı model yapısını kullanacaksın diye bir kuralmı var ? ado net dql sorgusunu kullanması bir yana adonet sınıfı microsoft'un kendi sınıfı neden orjinali varken başka sınıfları kullanim bumu programcılık anlayışı ? sen çok zekisinde microsoft çok mu akılsız adonet'e izin veriyor mvc de ?

    Allahınızı severseniz bana bir söyleyin ADO.net microsoftun da EntityFramework kimin? Bu zeka değil bu bilgi.https://www.asp.net/mvc girin bakın anlatımlara. Hayır madem asp.net MVC guru idiniz neden gelip soruyorsunuz. Soruyorsunuz cevap veriyoruz. Fanatizm yapıyorsunuz. DataTable siz yazsanız bu kadar korumazdınız

    entity başkasının demedim ama entiity daha az performanslı dedim çelişki yok mvc ile entitiy de kullanacagım adonet de fanatizimle alakası yok saçma sapan yerlere götrüyorsun sadece tespit yaptım daha kolay ama az performanslı entitiy büyük web uygulamalarında sorun teşkil eder bu yapı masaüstü uygulamalarında fazla önemi olmayabilir yoksa entitiy karşıtı deilmi ki
  • Yine bilgilendirme amaclı cevap veriyorum.Siz yine istediğinzi kullanın. 15 Üniversitenin kullandığı bir ürünü MVC ile kodluyoruz. Arka planda Postgresql kullanıyor. EntityFramework kullanıyoruz. Herhangi bir performans sorunu ile karışmadık. "unity of work pattern" kullanıyoruz. Yani orm abstract ettik.
    Biz belki hata ediyoruzdur. Alternatif öneri vereyim: aspnetboilerplate.com 2.200+ startlı Kurumsal bir .net Framework.
    500 satır kodu SqlDataReader 57ms de getiriyor. EntityFramework 600ms de.(deniyor) 10 katı diye bakarsak evet öyle lakin middleware olarak redis ile sorgularınızı cacheleyebilirisiniz.
    Düşünmeniz gereken ikinci ve belkide en önemli performans geliştirci performasıdır. azure da 1 vm aylık 13$ . yetmiyorsa 2.vm almak 13$ iken 1 developer 1 ayda ortalama 5.000TL ye mal oluyor. entity framework 7 ile bu rakamlarda baya değişti.http://ppanyukov.github.io/2015/05/20/entity-framework-7-performance.html

    Ayrıca golang .net den cok defa performanslı o zaman tüm konular silbastan oluyor. Kısaca performans bir şeydir ama tek kriter değil.
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.