我正试图获取加入公司的所有用户
var users = CreateObject<User>();
var companies = CreateObject<Company>();
var companyUsers = users
.Where(u => u.IsEmployee)
.Join(companies, u => u.UserId, c => c.UserId, (u, c) => u.UserId)
.ToList();
问题:我试图返回类型为List的companyUsers,而我的方法的返回类型是此代码所在的List,但当我为该方法返回companyUsers时,我得到了一个错误,即List无法转换为List。
我认为这只是一个语法错误,因为LINQ试图返回一个不同的类型,因为我的查询中有一个语法问题,我看不到。
基本上是说我不能将返回的LINQ类型分配给我的公司用户和公司用户是
List<User>
您不是在选择用户,而是在查询中选择用户ID。输出是List<X>
,其中X
是UserId
的类型(我认为它是int或其他一些基本类型)。
要解决此问题以获得List<User>
,请更改联接以产生不同的输出。
.Join(companies, u => u.UserId, c => c.UserId, (u, c) => u)
.ToList();