如何使用LINQ从两个表中获取数据 [英] How to get the data from two tables using LINQ

查看:113
本文介绍了如何使用LINQ从两个表中获取数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述





这是我的linq查询。



我有两个表一个是评论和其他一个是Master_country。

目前我得到的结果只有评论表使用下面的查询。

现在我需要第二个表的数据。

 var reviwdata = from context inCompanyReviews.Where(k => k.Cid == compId).OrderByDescending(o => o.Sno).Take (take).Skip(pageSize)选择x; 
用于在Repeater上进行分页的页面大小。那是动态值。
结果是
id name Countryid
1 nag 2
2 raj 2
3 raj 2

在我的Master_county表中
country id位置
2 Hyderabd
3 chennai

如何从Master_country表中分配我的数据
我想这样使用Reviews和Master_country Tables。
id name countryname
1 nag Hyderabad
2 raj Hyderabad
3 raj hyderabad





请帮助我......

谢谢...

解决方案

  var   result   =  
来自 x context Master_county
join y context CompanyReviews x equals y Countryid into ps
from p ps
选择 new { x x name x countryid p countryname }


var reviwdata =(来自 j context.CompanyReviews
join s context.Companies on new {Cid =( Int32 )j.Cid}等于 new {Cid = s.Id}
其中
s.Id == compId
select new
{
j.Sno,
j.Title,
j.Cons,
j.Date,
j.Rating,
j.CorrentOrFo rmer,
j.JobTitle,
j.Pros,
s.CompanyName
})。OrderByDescending(j => j.Sno).Take(take).Skip(的pageSize);


Hi,

This is my linq query.

I have a two tables one is Reviews and other one is Master_country.
present I got result only Reviews table using bellow query.
Now I need data from 2nd Table.

var reviwdata = from x in context.CompanyReviews.Where(k => k.Cid == compId).OrderByDescending(o => o.Sno).Take(take).Skip(pageSize) select x;
take and pagesize used for paging on Repeater. That is Dynamic values.
The result is
id     name  Countryid
1       nag  2
2       raj  2
3       raj  2

in my Master_county table 
country id  Location
   2        Hyderabd
   3        chennai

How to assign my data from Master_country Table
I want like this using Reviews and Master_country Tables.
id      name         countryname
1       nag           Hyderabad
2       raj           Hyderabad
3       raj           hyderabad 



Please Help me...
Thank you...

解决方案

var result =
        from x in context.Master_county
        join y in context.CompanyReviews on x equals y.Countryid into ps
        from p in ps
        select new { x.is,x.name,x.countryid, p.countryname }


var reviwdata = (from j in context.CompanyReviews
                            join s in context.Companies on new { Cid = (Int32)j.Cid } equals new { Cid = s.Id }
                            where
                            s.Id == compId
                            select new
                            {
                                j.Sno,
                                j.Title,
                                j.Cons,
                                j.Date,
                                j.Rating,
                                j.CorrentOrFormer,
                                j.JobTitle,
                                j.Pros,
                                s.CompanyName
                            }).OrderByDescending(j=>j.Sno).Take(take).Skip(pageSize);


这篇关于如何使用LINQ从两个表中获取数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆