Linq 分组或者去重public Listfuction Getlist(string School){Db_Jst_ChatgroupDataContext S_Info n
Linq 分组或者去重
public List<fuction> Getlist(string School)
{
Db_Jst_ChatgroupDataContext S_Info = new Db_Jst_ChatgroupDataContext();
IQueryable<fuction> item = from G_info in S_Info.Group_Info1
from G_School in S_Info.Group_SchoolInfo
where G_info.Gschool.Equals(School)
select new fuction
{
省份 = G_info.Gprovince,
学校 = G_info.Gschool,
班级 = G_info.GroupName,
联系人 = G_School.Contact,
联系邮箱 = G_School.Email,
联系电话 = G_School.Tel
};
return item.ToList();
}
[最优解释]本帖最后由 q107770540 于 2012-11-13 17:51:11 编辑
public class FuctionComparer : IEqualityComparer<fuction>
{
public bool Equals(fuction f1, fuction f2)
{
return (f1.省份 == f2.省份 && f1.学校 == f2.学校);
}
public int GetHashCode(fuction t)
{
return t.ToString().GetHashCode();
}
}
return item.ToList().Distinct(new FuctionComparer ());
[其他解释] public List<fuction> Getlist(string School)
{
Db_Jst_ChatgroupDataContext S_Info = new Db_Jst_ChatgroupDataContext(); IQueryable<fuction> item = from G_info in S_Info.Group_Info1 from G_School in S_Info.Group_SchoolInfo
where G_info.Gschool.Equals(School)
select new fuction
{
省份 = G_info.Gprovince,
学校 = G_info.Gschool,
班级 = G_info.GroupName,
联系人 = G_School.Contact,
联系邮箱 = G_School.Email,
联系电话 = G_School.Tel
};
return item.Distinct().ToList();
}
[其他解释]
上面查询出来为什么会出现重复的行,求解.
如果消除重复行,代码应该怎么改.
如果利用分组来消除重复,分组的格式是怎么样的
[其他解释]
linq有distinct函数
[其他解释]
我的应该加在哪里?
[其他解释]参考:
http://blog.csdn.net/q107770540/article/details/5784646
[其他解释][quote=引用:]
return item.ToList().Distinct(new FuctionComparer ());//?
[quote]
我的应该怎样写哦, return item.ToList().Distinct(new fuction());这样写不对哦
[其他解释]帮我改下我的啊,接触Linq时间不长,看不懂
[其他解释]请教下,分组应该写在哪里?用G_School.Contact来分组应该怎么写
[其他解释]求来人...