我被这个连接代码卡住了,我需要一些帮助。
我想做这个sql语句
FROM regSupplier st
LEFT JOIN regSupplierBankAccount sba ON st.nSupplierCode = sba.nSupplierCode AND sba.isDefault = 1但在这样的c#里
FROM st IN dbContext.regSupplier
JOIN sba IN dbContext.regSupplierBankAccount ON NEW {st.nSupplierCode} EQUALS NEW {sba.nSupplierCode, sba.isDefault = 1} INTO joinBank
FROM jb IN joinBank.DefaultIfEmpty()但不起作用。如果有人能帮我的忙,我会提前感激的。谢谢
发布于 2021-03-24 18:30:27
LINQ中用于连接条件的表达式必须相等。您正在尝试比较两种从未相等的表达式,因此连接将失败。实际上,第二个db集需要一个where,如下所示:
from st in dbContext.regSupplier
join sba in dbContext.regSupplierBankAccount.Where(e => e.isDefault == 1)
on st.nSupplierCode equals sba.nSupplierCode into joinBank
from jb in joinBank.DefaultIfEmpty()https://stackoverflow.com/questions/66783322
复制相似问题