2012-03-05 32 views
0

我使用linqer T-SQL查詢想這個SQL來liqn查詢,但我有問題Linqer不轉換

select * from Project where Id in (select Top 3 ForeignId from ActivityLog 
group by ForeignId order by count(*) desc) 

問題:SQL無法轉換爲LINQ:領域身份證件(選擇ActivityLog前3 ForeignId按當前數據上下文中未找到的按照計數(*)desc)的ForeignId命令組。

+0

你能提供一些更多的信息,例如。你的sourceode不工作? – 2012-03-05 14:27:57

+0

是自我解釋? ID在當前數據上下文中找不到 – 2012-03-05 14:29:11

+0

我從DataContext的引用中認爲這是從Linq到SQL。您發佈的內容似乎不是Linq查詢,它是原始SQL。嘗試發佈調用查詢的實際C#代碼。 – luksan 2012-03-05 14:50:47

回答

0

我剛剛和linqer有類似的問題。我發現解決方案是刪除;在SQL查詢之後再次嘗試。

這可能是您的上下文的問題。有關設置上下文的說明,請參閱Linqer – a nice tool for SQL to LINQ transition
此外,請確保* .dbml和* .designer.cs文件是最新的,並將Project表定義爲包含Id列和包含ForeignId列的ActivityLog表。

這可能是您正在使用的linqer版本的錯誤。我使用4.0.3,並能夠運行相同的查詢(調整爲使用我的表)沒有問題。