Tôi đang cố gắng thực hiện truy vấn sql đơn giản này với LINQ. Nhưng nó cho tôi lỗi.Cách thực hiện các phép nối trái trong LINQ trên nhiều trường trong một lần tham gia
Dưới đây là các truy vấn SQL mà cần phải conver để LINQ
DECLARE @groupID int
SET @groupID = 2
SELECT *
FROM dbo.Person p
LEFT JOIN dbo.PersonGroup pg ON (p.PersonID = pg.PersonID AND pg.GroupID = @groupID)
Bỏ qua @groupID. sẽ được cung cấp dưới dạng tham số hàm cho truy vấn LINQ.
Đây là LINQ truy vấn những gì tôi đã thử.
from p in Person
join pg in PersonGroup on new { p.PersonID, groupID } equals new { pg.PersonID, pg.GroupID } into t
from rt in t.DefaultIfEmpty()
Trường hợp groupID được cung cấp làm thông số chức năng. Cả GroupID và PersonID đều là int. Nhưng nó cho tôi lỗi sau,
Error 2 The type of one of the expressions in the join clause is incorrect. Type inference failed in the call to 'GroupJoin'.
Trợ giúp nhỏ sẽ được đánh giá cao.
Cảm ơn bạn. Nó hoạt động :) –