gpt4 book ai didi

nhibernate - 如何使用 Linq to NHibernate 获取不同的值?

转载 作者:行者123 更新时间:2023-12-03 09:56:39 25 4
gpt4 key购买 nike

我一直在尝试使用 Linq to NHibernate 获得不同的值,但我失败了。

我试过了:

var query = from requesters in _session.Linq<Requesters>()
orderby requesters.Requestor ascending
select requesters;

return query.Distinct();


var query = from requesters in _session.Linq<Requesters>()
orderby requesters.Requestor ascending
select requesters;

return query.Distinct(new RequestorComparer());

RequestorComparer 在哪里
public class RequestorComparer : IEqualityComparer<Requesters>
{

#region IEqualityComparer<Requesters> Members
bool IEqualityComparer<Requesters>.Equals(Requesters x, Requesters y)
{
//return x.RequestorId.Value.Equals(y.RequestorId.Value);
return ((x.RequestorId == y.RequestorId) && (x.Requestor == y.Requestor));
}

int IEqualityComparer<Requesters>.GetHashCode(Requesters obj)
{
return obj.RequestorId.Value.GetHashCode();
}
#endregion
}

无论我如何构造语法,它似乎都不会遇到 .Distinct() .无 .Distinct()默认情况下,我查询的表中有多个重复项,总共有 195 条记录,但应该只返回 22 个不同的值。

我不确定我做错了什么,但非常感谢可以提供的任何帮助。

谢谢

最佳答案

我发现以下作品(NHibernate v3.3.1)。

         var query= (from requesters  in _session.Query<Requesters>() 
orderby requesters.Requestor ascending
select requesters.Requestor).Distinct();

关于nhibernate - 如何使用 Linq to NHibernate 获取不同的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3677889/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com