我对我的项目的模型进行了更改,并且有一个连接,我似乎无法弄清楚如何更改以响应模型更改。这是原始模型设置和连接代码:
query = query.Join(db.Reports,
x => new
{
x.SourceUser,
x.TargetUser
},
x2 => new
{
SourceUser = x2.TargetUser,
TargetUser = x2.SourceUser
},
(x, x2) => new { x, x2 }).Where(f => (f.x.SourceUser == user)).Select(p => p.x);
此连接的结果是生成的查询仅提供相互的报告关系(如,双方已相互报告)。这个连接工作得很好,直到我改变模型。
这是新模型设置
这是我修改加入代码的尝试
query = query.Join(db.Reports,
x => new
{
x.SourceUser,
x.TargetReportable
},
x2 => new
{
SourceUser = x2.TargetReportable,
TargetReportable = x2.SourceUser
},
(x, x2) => new { x, x2 }).Where(f => (f.x.SourceUser == user)).Select(p => p.x);
这会导致以下错误:
无法从用法中推断方法 'System.Linq.Enumerable.Join(System.Collections.Generic.IEnumerable, System.Collections.Generic.IEnumerable, System.Func, System.Func, System.Func) 的类型参数。尝试明确指定类型参数。