2017-06-01 101 views
-2

这是一个简单的问题真的,我已经在产品和d图像2个产品和形象使用中继器列表中显示如下Lambda表达式加入一对多的关系导致多个对象

Products(Urun) 
-------- 
ProductID(UrunID) 
ProductName(UrunAdi) 

IMages(Resimler) 
------- 
ImageID(ResimID) 
ImageName(ResimAdi) 
ProductID(UrunID) 
Path(Path) 

在asp.net IM产品在div,但我的lambda表达式结果;列出div与图像不与产品(实际上产品,但因为产品有更多的图像比它显示每个图像)

ihow我可以更改代码,只显示1图像图像是否可能?

() 
right1.datasource = Contextim.MyContext.Urunlers.Join(Contextim.MyContext.Resimlers, u => u.UrunID, r => r.UrunID, (u, r) => new { UrunID = u.UrunID, UrunAdi = u.UrunAdi,OzellikID=u.OzellikID, Path = r.Path ,KategoriID=u.KategoriID }).ToList().Where(d=> d.KategoriID==catid).ToList(); 

回答

0

该解决方案集团所用

right1.datasource =(From u in Contextim.MyContext.Urunlers 
         Join r in Contextim.MyContext.Resimlers on u.UrunID equals r.UrunID 
        Where u. KategoriID== catid 
        Group new {u,r} by p. UrunID into jj 
        Select new { 
            UrunID = jj.FirstOrDefault(). u.UrunID, 
            UrunAdi = jj.FirstOrDefault(). u.UrunAdi, 
            OzellikID= jj.FirstOrDefault(). u.OzellikID, 
            Path = jj.FirstOrDefault(). r.Path ,  
            KategoriID= jj.FirstOrDefault(). u.KategoriID 
           }).ToList();