我想选择一些数据库int值到整数数组.Below代码出错
int[] lst = contxt.tbl_ReportingAthorityDetails.Where(x => x.isDelete == false && x.reportingAthority == lgdempid).Select(x => new { x.employeeId}).ToArray();
错误是
Cannot implicitly convert type 'AnonymousType#1[]' to 'int[]'
答案 0 :(得分:2)
在Select中使用匿名类型会导致此错误。
重写你的"选择"查询的一部分:
.Select(x => x.employeeId).ToArray()
答案 1 :(得分:2)
Select(x => x.employeeId).ToArray()
应该足够而不是
Select(x => new { x.employeeId}).ToArray()
后者生成一个匿名类的实例,其唯一成员类型为int,并且除了object之外不能强制转换为任何内容。
答案 2 :(得分:0)
你应该尝试这个,因为它将创建一个匿名类的实例:
.Select(x => x.employeeId).ToArray()
答案 3 :(得分:0)
错误是由于您的select查询中的“new”创建了匿名类型类。
选择(x => new {x.employeeId} )。ToArray()
删除新内容将解决问题。
contxt.tbl_ReportingAthorityDetails.Where(x => x.isDelete == false&& x.reportingAthority == lgdempid)。选择(x => x.employeeId) .ToArray();