1
我們正在慢慢地將一些VB.Net代碼轉換爲C#,所以我試圖在C#中學習正確的語法。有人可以幫助完成此轉換嗎?基本上,我從一個視圖中拖出所有尚未在另一個表中選擇(保存)的值並對這些項目進行搜索。Linq - 通過查詢將VB.Net轉換爲C#幫助
員工a,b,c,d位於Employee表中。 我已經選擇並保存員工a和b。 現在,當我重新運行搜索時,它應該排除員工a和b,並且只有在滿足搜索條件時才搜索c和d。
這適用於vb.net查詢。我試圖弄清楚如何翻譯。
感謝您的幫助!我認爲這是一個非常簡單的翻譯,我只是遇到了一些麻煩。
Dim query = From tmp In context.vw_EmployeeDemographics _
Where Not (From jitrv In context.JITRuleValidations
Join e In context.Employees On jitrv.Employee_RecordID Equals e.RecordID _
Where jitrv.Parent_RecordID = Parent_RecordID _
Select e.RecordID).Contains(tmp.Parent_RecordID) And
context.fn_ConcatName(tmp.FirstName, tmp.MiddleName,
tmp.LastName).Contains(_master.pSearchValue1) _
Order By tmp.LastName.ToUpper(), tmp.FirstName.ToUpper() _
Select FirstName = tmp.FirstName, MiddleName = tmp.MiddleName,
LastName = tmp.LastName, RecordID = tmp.EmployeeID, _
DisplayText = context.fn_ConcatName(tmp.FirstName, tmp.MiddleName, tmp.LastName)
您也可以拆分兩個條件爲單獨「何處「條款。即其中!validations.Contains(tmp.Parent_RecordID)其中DisplayText.Contains(_master.pSearchValue1) 我喜歡這樣做,只要條款彼此不相關 - 使它更乾淨,更可讀,恕我直言。 – GalacticCowboy 2010-01-08 14:58:29
感謝您的回覆。這實際上幫助了我很多其他的問題。現在,在C#LINQ上購買一本書:) – sugarcrum 2010-01-08 15:02:40