2011-05-16 77 views
0

我可以用linqer轉換此查詢。使用LINQER將SQL查詢轉換爲LINQ時出現錯誤

select * 
from v#gharardad 
inner join (select FK#GharardadeAsli, Max(PK#Shenase) as PK#Shenase, Max(TarikheSabt) as TarikheSabt 
      from TBL#Gharardad 
      where FK#GharardadeAsli is not null 
      group by FK#GharardadeAsli 
      ) sub on sub.PK#Shenase = v#gharardad.[Shenase] 

錯誤:> SQL不能轉換到LINQ:字段[子] [PK#Shenase]不在當前數據上下文找到。

如果沒有辦法通過這個錯誤,那麼你能告訴我它的LINQ是否相等?

+0

你能告訴我「v#gharardad」中的#是什麼意思嗎? – 2011-05-16 12:10:41

+1

爲什麼#裏面有這個名字? – 2011-05-16 12:12:47

+2

也許有點偏離主題,但爲什麼你會在表格或視圖名稱中加入'#'? – Yuck 2011-05-16 12:13:28

回答

3

#字符似乎被LINQ設計者翻譯爲_

嘗試創建臨時視圖,您將所有#替換爲_。然後再次在Linqer中運行查詢,它可能會工作。

+0

linqer無法識別[sub]你的回答真的是錯誤的。但是,謝謝你的努力 – Saleh 2011-05-16 12:21:44

+0

正如你看到它不是一個linq查詢,它是sql查詢 – Saleh 2011-05-16 12:22:18

+0

有時我想我可以在我的變量名稱中使用unicode字符,爲什麼c#不要讓我在變量名中使用#字符 – Saleh 2011-05-16 12:24:22