急求。。Linq多表联合查询,Group By分组问题
我使用的Wcf RIA Silverlight,有两个数据表,siteInfo表(siteID,经度lon,纬度lat,siteName)和shopInfo表(shopID,siteID,date,earning),两个表通过siteID关联,我想实现这样的查询,例如:
siteInfo表
siteID lon lat siteName
1 112.00 32.10 长沙
2 112.10 33.20 武汉
shopInfo表
shopID siteID date earning
1 1 2012/1/2 1000
2 1 2012/1/2 2000
3 1 2012/1/3 1500
1 2 2012/1/2 1200
2 2 2012/1/2 2200
3 2 2012/1/3 1300
想得到的结果:
siteID lon lat siteName date earning
1 112.00 32.10 长沙 2012/1/2 3000
1 112.00 32.10 长沙 2012/1/3 1500
2 112.10 33.20 武汉 2012/1/2 3400
2 112.10 33.20 武汉 2012/1/3 1300
我是这样做的,我首先DomainService.metadata.cs自定义一个集合类
//自定义集合类
public class site_shopInfo
{
[DataMember]
[Key]
public int siteID { get; set; }
[DataMember]
public decimal Latitude { get; set; }
[DataMember]
public decimal Longitude { get; set; }
[DataMember]
public DateTime date {get;set;}
[DataMember]
public int Totalearning {get;set;}
}
然后在DomainService.cs里面定义查询方法
public IQueryable<site_shopInfo> Getsite_shopInfo()
{
var query =from a in this.ObjectContext.siteInfo
join b in this.ObjectContext.shopInfo on a.siteID equals b.siteID