我尝试从可以为user_input
的{{1}}对象生成整数数组。我在将$(document).on('click', '.delete', function(e){
$(this).parent().remove();
})
类型转换为IQueryable
时遇到问题。下面的查询构建,但执行时出错?
int
答案 0 :(得分:4)
您的结果中的每个项目都无法投放到int
。您为结果集的每个项目选择一个具有三个属性的匿名类型。如何将其转换为int
?
另一方面,这样的事情会起作用:
int[] result = (from x in query
where x.SITE_ID == siteId
select x.RANK_1 ?? 0).ToArray();
但是,我不意识到RANK_1
,RANK_2
和RANK_3
的含义以及您想要检索的内容。通过回答这个问题,您可以根据上述代码解决问题。
答案 1 :(得分:0)
您的代码正在尝试将IEnumerable
匿名类型转换为IEnumerable<int>
。
这一行:
(from x in query
where x.SITE_ID == siteId
select new
{
x.RANK_1,
x.RANK_2,
x.RANK_3
})
创建一个新类型对象的IEnumerable,包含3个属性RANK_1
,RANK_2
和RANK_3
。对Cast<int>
的调用会尝试将此类型转换为int
,这是不可能的。