0

我在使用实体框架时一直在学习 LINQ Lamda 表达式。但无法找出我的代码(如下所述)不起作用的原因,或者有没有其他方法可以实现它?

tbl_A 是一个实体。

var tbl_A = from e in db.TBL_A select e;

基于 tbl_A 上的某些过滤器,以匿名类型提取两列。

if(value != 0) {tbl_A = tbl_A.Where(a=>a.Id == value);}
var anoType = tbl_A.Select(a=>new {ID = a.ID,NAME = a.NAME});

我正在尝试从 tbl_B 中获取所有记录,其中 ID 和 NAME(两者都匹配)在上述匿名类型中。

var blockUpdate = db.tbl_B.Join(anoType, a => new { a.ID, a.NAME }, 
b => new { b.ID, b.NAME },(a, b) => new { a });

它给出了编译时错误 - 无法从用法中推断出方法的类型参数。尝试明确指定类型参数。

4

0 回答 0