Forum

ASP.net EntityFrame...
 
Bildirimler
Hepsini Temizle

[Çözüldü] ASP.net EntityFrameWork tablo join sorunu

7 Yazılar
3 Üyeler
0 Reactions
1,588 Görüntüleme
(@sercannn)
Gönderiler: 11
Active Member
Konu başlatıcı
 

Merhaba,

 

Asp.net de Entity Framework yapısını kullanarak repeater içerisinde #Eval tag'i ile veri listelemeye çalışıyorum.

Ancak .cs tarafında oluşturduğum sorgu yapısında datasource boş dönüyor. Join yapmadan sorgu yaptığımda istediğim veriyi listeleyebiliyorum ancak join yaptığımda istediğim sonucu alamıyorum.

Örnek olarak kod bloğumu paylaşıyorum;

            SiteDB db = new SiteDB();
            TBL_MAKALE makale = new TBL_MAKALE();
            TBL_BASLIK baslik = new TBL_BASLIK();
            // var Listele = db.TBL_MAKALE.OrderBy(s => s.Makale_Icerik).ToList();
            var Listele = (from s in db.TBL_MAKALE
                           join f in db.TBL_BASLIK on s.ID equals f.Makale_ID
                           select new
                           {
                               makale.Makale_Icerik,
                               baslik.MakaleBaslik,
                               makale.Makale_Durum
                           }).ToList();
            myRepeater10.DataSource = Listele;
            myRepeater10.DataBind();

repeater içerisinde yer alan #Eval tag örneğim;

     <a>
                      <%#Eval("MakaleBaslik")%>
                          </a>   
                          <br/>
                      </td>
                      <td class="project_progress">
                          <small>
                              <%#Eval("Makale_Icerik")%>
                          </small>
                              </div>
                          </div  
                      </td>
                      <td class="project-state" style="width: 302px
                          <span class="badge badge-success"><%#Eval("Makale_Durum")%></span
                      </td>

DB tarafında makale tablosu içinde yer alan ID alanı Baslık tablosunda ki Makale_ID alanına bağlanmış durumda.

Insert ederken makale tablosunda ki ID değerini baslık tablosunda ki Makale_ID alanına gönderebiliyorum. Insert etme noktasında sorun yok.

Yardımcı Olabilirseniz sevinirim. Herkese İyi Çalışmalar.

 
Gönderildi : 31/08/2020 11:36

(@eravse)
Gönderiler: 1753
Üye
 
Gönderen: @sercannn

Merhaba,

 

Asp.net de Entity Framework yapısını kullanarak repeater içerisinde #Eval tag'i ile veri listelemeye çalışıyorum.

Ancak .cs tarafında oluşturduğum sorgu yapısında datasource boş dönüyor. Join yapmadan sorgu yaptığımda istediğim veriyi listeleyebiliyorum ancak join yaptığımda istediğim sonucu alamıyorum.

Örnek olarak kod bloğumu paylaşıyorum;

            SiteDB db = new SiteDB();
            TBL_MAKALE makale = new TBL_MAKALE();
            TBL_BASLIK baslik = new TBL_BASLIK();
            // var Listele = db.TBL_MAKALE.OrderBy(s => s.Makale_Icerik).ToList();
            var Listele = (from s in db.TBL_MAKALE
                           join f in db.TBL_BASLIK on s.ID equals f.Makale_ID
                           select new
                           {
                               makale.Makale_Icerik,
                               baslik.MakaleBaslik,
                               makale.Makale_Durum
                           }).ToList();
            myRepeater10.DataSource = Listele;
            myRepeater10.DataBind();

repeater içerisinde yer alan #Eval tag örneğim;

     <a>
                      <%#Eval("MakaleBaslik")%>
                          </a>   
                          <br/>
                      </td>
                      <td class="project_progress">
                          <small>
                              <%#Eval("Makale_Icerik")%>
                          </small>
                              </div>
                          </div  
                      </td>
                      <td class="project-state" style="width: 302px
                          <span class="badge badge-success"><%#Eval("Makale_Durum")%></span
                      </td>

DB tarafında makale tablosu içinde yer alan ID alanı Baslık tablosunda ki Makale_ID alanına bağlanmış durumda.

Insert ederken makale tablosunda ki ID değerini baslık tablosunda ki Makale_ID alanına gönderebiliyorum. Insert etme noktasında sorun yok.

Yardımcı Olabilirseniz sevinirim. Herkese İyi Çalışmalar.

 

 

merhaba 

 

 select new
                           {
                               makale.Makale_Icerik,
                               baslik.MakaleBaslik,
                               makale.Makale_Durum
                           }) 

 

kısmında 

....
 select new List<ABC>
                           {
                              a = makale.Makale_Icerik,
                              b =  baslik.MakaleBaslik,
                              c =  makale.Makale_Durum
                           })
....

şeklinde class ile doner mısınız ? 

ProfectSoft Yazılım ve Danışmanlık Hizmetleri
LogPusher & Bifyou E-Commerce System
www.profectsoft.com

 
Gönderildi : 04/10/2020 21:36

(@sercannn)
Gönderiler: 11
Active Member
Konu başlatıcı
 
Gönderen: @eravse
Gönderen: @sercannn

Merhaba,

 

Asp.net de Entity Framework yapısını kullanarak repeater içerisinde #Eval tag'i ile veri listelemeye çalışıyorum.

Ancak .cs tarafında oluşturduğum sorgu yapısında datasource boş dönüyor. Join yapmadan sorgu yaptığımda istediğim veriyi listeleyebiliyorum ancak join yaptığımda istediğim sonucu alamıyorum.

Örnek olarak kod bloğumu paylaşıyorum;

            SiteDB db = new SiteDB();
            TBL_MAKALE makale = new TBL_MAKALE();
            TBL_BASLIK baslik = new TBL_BASLIK();
            // var Listele = db.TBL_MAKALE.OrderBy(s => s.Makale_Icerik).ToList();
            var Listele = (from s in db.TBL_MAKALE
                           join f in db.TBL_BASLIK on s.ID equals f.Makale_ID
                           select new
                           {
                               makale.Makale_Icerik,
                               baslik.MakaleBaslik,
                               makale.Makale_Durum
                           }).ToList();
            myRepeater10.DataSource = Listele;
            myRepeater10.DataBind();

repeater içerisinde yer alan #Eval tag örneğim;

     <a>
                      <%#Eval("MakaleBaslik")%>
                          </a>   
                          <br/>
                      </td>
                      <td class="project_progress">
                          <small>
                              <%#Eval("Makale_Icerik")%>
                          </small>
                              </div>
                          </div  
                      </td>
                      <td class="project-state" style="width: 302px
                          <span class="badge badge-success"><%#Eval("Makale_Durum")%></span
                      </td>

DB tarafında makale tablosu içinde yer alan ID alanı Baslık tablosunda ki Makale_ID alanına bağlanmış durumda.

Insert ederken makale tablosunda ki ID değerini baslık tablosunda ki Makale_ID alanına gönderebiliyorum. Insert etme noktasında sorun yok.

Yardımcı Olabilirseniz sevinirim. Herkese İyi Çalışmalar.

 

 

merhaba 

 

 select new
                           {
                               makale.Makale_Icerik,
                               baslik.MakaleBaslik,
                               makale.Makale_Durum
                           }) 

 

kısmında 

....
 select new List<ABC>
                           {
                              a = makale.Makale_Icerik,
                              b =  baslik.MakaleBaslik,
                              c =  makale.Makale_Durum
                           })
....

şeklinde class ile doner mısınız ? 

hocam cevabınız için teşekkür ederim. Ben bu sorunu çözmüştüm. Ancak konuyu kapatmayı unutmuşum. İlgi alakanıza teşekkür eder, iyi çalışmalar dilerim 🙂

 
Gönderildi : 04/10/2020 21:51

(@eravse)
Gönderiler: 1753
Üye
 

@sercannn

 

nasıl çözdünüz çözümü de yazın 🙂 faydalansın herkes 🙂 

ProfectSoft Yazılım ve Danışmanlık Hizmetleri
LogPusher & Bifyou E-Commerce System
www.profectsoft.com

 
Gönderildi : 04/10/2020 21:54

(@sercannn)
Gönderiler: 11
Active Member
Konu başlatıcı
 

@eravse

Haklısınız hocam. Hemen paylaşıyorum. Aşağıda ki şekilde. Tagin id değerinin db tarafında nereden geldiğini belirterek çözdüm.

Tabi burada ek olarak ID bilgilerini de ekledim.

var Listele = (from s in db.TBL_MAKALE
join f in db.TBL_BASLIK on s.ID equals f.Makale_ID
select new
{
ID = s.ID,
Makale_ID = f.Makale_ID,
Makale_Icerik = s.Makale_Icerik,
MakaleBaslik = f.MakaleBaslik,
Makale_Durum = s.Makale_Durum
}).ToList();
myRepeater10.DataSource = Listele;
myRepeater10.DataBind();

 
Gönderildi : 04/10/2020 22:01

Hakan Uzuner
(@hakanuzuner)
Gönderiler: 33322
Illustrious Member Yönetici
 

Geri dönüş ve bilgi için teşekkürler.

Danışman - ITSTACK Bilgi Sistemleri
****************************************************************
Probleminiz Çözüldüğünde Sonucu Burada Paylaşırsanız.
Sizde Aynı Problemi Yaşayanlar İçin Yardım Etmiş Olursunuz.
Eğer sorununuz çözüldü ise lütfen "çözüldü" olarak işaretlerseniz diğer üyeler için çok büyük kolaylık sağlayacaktır.
*****************************************************************

 
Gönderildi : 11/10/2020 15:46

(@sercannn)
Gönderiler: 11
Active Member
Konu başlatıcı
 

@hakanuzuner

 

ben teşekkür ederim hocam.

 
Gönderildi : 23/10/2020 10:21

Paylaş: