Sql server 2005 如何将此SQL查询转换为LINQ到SQL?
如何将此SQL查询转换为LINQ到SQL?:Sql server 2005 如何将此SQL查询转换为LINQ到SQL?,sql-server-2005,linq-to-sql,Sql Server 2005,Linq To Sql,如何将此SQL查询转换为LINQ到SQL?: select COUNT(ua.UserAlertID) as Alerts, ph.LastName +' '+ ph.MiddleName as Name, ph.Email,us.UserSystemID, ur.UserStatus from PHUser ph inner join UserSystem us on us.UserID=ph.UserID inner join UserRole ur
select
COUNT(ua.UserAlertID) as Alerts,
ph.LastName +' '+ ph.MiddleName as Name,
ph.Email,us.UserSystemID,
ur.UserStatus from PHUser ph
inner join UserSystem us on us.UserID=ph.UserID
inner join UserRole ur on ur.UserID=ph.UserID
inner join Role rr on rr.RoleID=ur.RoleID
inner join UserAlerts ua on ua.SeniorID=ph.UserID
group by ph.LastName,ph.MiddleName,ph.Email,us.UserSystemID,ur.UserStatus
我已经将上面的大部分查询转换为LINQ,但是我一直在计算ua.UserAlertID
列上的值的数量:COUNT(ua.UserAlertID)as Alerts
如何将其转换为LINQ
请建议如何将计数(ua.UserAlertID)转换为Linq中的警报
谢谢许多人可以帮助您完成此查询。这很简单。有一种产品(非常便宜)可以帮助你做这类事情。该产品是Linqer(
http://www.sqltolinq.com/
)。此工具将大多数SQL语句转换为Linq。有30天的试用期,我想费用不超过40美元。我已经多次使用它来加快将SQL查询转换为Linq的速度
那么我建议你买一个叫LinqPad的免费产品。这将允许您在将Linq查询粘贴到生产代码之前对其进行原型化。这是一个非凡的工具。我能看看你转换的LinQ吗 如果您的查询是确定的,那么您将得到一行
按新的{ua.UserAlertId,…}将s分组到temp中
正如我在select new{}part use中所记得的那样
select new
{
Total Alerts = temp.Key.UserAlertdId.Count(), ...,...,...,...
}
请您尝试一下并通知我好吗?我建议您从下载LinqPad并亲自尝试一下,这样下次您就可以学习并更轻松地完成。感谢您的快速回复。我已将上面的大部分查询转换为linq,但我一直无法计算列名上的值数。这里将(ua.UserAlertID)计算为警报。如何在Linq中做到这一点??“很多人都可以帮助你完成这个查询。它非常简单”-那么你为什么不提供帮助,而不是推荐可收费的工具呢。这不是一个有用的答案。Linqer免费30天。他可以免费转换他的问题。此外,如果我为他创建查询,他会学到什么?我只需要帮助将计数(ua.UserAlertID)转换为Linq???@Tarun中的警报-您想要UserAlerts表中的总行数还是与联接匹配的总行数?我想要根据用户的警报计数。在my UserAlerts表中,有三个针对user1的警报和一个针对user2的警报。所以我需要3作为user1的计数,2作为user2的计数。我已经尝试了上面的方法,但是在temp.Key.UserAlertId.var p之后没有得到count()=(从ph in base.DataContext.User加入我们in base.DataContext.USyt on ph.UserID等于us.UserID加入我们in base.DataContext.URle on ph.UserID等于ur.UserID加入rr in base.DataContext.Rol on ur.RoleID等于rr.RoleID加入ua in base.DataContext.UserAlerts on ph.UserID等于ua.SeniorID组new{ph,us,ur,rr,ua}}by new{ph.LName,ph.MName,ph.Email,us.UserSystemID,ur.UserStatus,ua.UserAlertID,ph.UserID}进入g选择新的{Name=g.Key.MiddleName+“”+g.Key.LastName,Email=g.Key.Email,SystemID=g.Key.UserSystemID,Status=g.Key.UserStatus,g.Key.UserID,count=g.Key.UserAlertID}).Distinct();