0

LINQ to SQL を SQL クエリに変換したい。簡単な LINQ to SQL は知っていますが、それ以上のことは知りません。

以下は私のLinq to Sqlで、それをSqlクエリに変換したいと思います。

from objSql in objContext.DoctorNotes
join objCreatedU in objContext.Users on objSql.CreatedByUserFK equals objCreatedU.UserID into objCU
from tblC in objCU.DefaultIfEmpty()
join objModifiedU in objContext.Users on tblC.ModifiedByUserFK equals objModifiedU.UserID into objMU
from tblM in objMU.DefaultIfEmpty()
select new DoctorNoteBind(objSql)
{
    CreatedBy = tblC.UserName,
    ModifiedBy = tblM.UserName
}).ToList();
4

1 に答える 1

0

.DefaultIfEmpty() は、LEFT JOINs ( http://msdn.microsoft.com/en-us/library/ms187518(v=sql.100).aspx ) を表すために使用されます。同等の SQL は次の形式を取ると予想されます。

SELECT
    U1.UserName AS CreatedBy,
    U2.UserName AS ModifiedBy
FROM
    DoctorNotes DN
LEFT JOIN Users U1 ON
    U1.UserID = DN.CreatedByUserFK
LEFT JOIN Users U2 ON
    U2.UserID = DN.ModifiedByUserFK
-- WHERE ?
-- ORDER BY ?
于 2013-07-01T05:18:46.860 に答える