以下代码段的连接条件有什么问题?
var result = (from p in payments
join pr in paymentobs on p.PaymentId equals pr.PaymentId
Error here --> join ar in accountobs on p.AccountId equals ar.TFLEXID
select new
{
PaymentId = ..........,
AgencyId = ..........,
..........................
..........................
});
错误是
join子句中某个表达式的类型不正确。呼叫'加入'
时,类型推断失败
答案 0 :(得分:1)
这是因为您在equals表达式中使用的属性类型不匹配。
为了进行连接,equals表达式上的类型应匹配。话虽如此,p.AccountId
的类型应与ar.TFLEXID
的类型相匹配。如果不是这样,那么您就无法按原样进行连接。
可能的解决方法是,将equals表达式的一个成员转换为另一个成员的类型,如果可能的话。这是一种解决方法,只要这样做有意义。