我有以下内容:
var resourceids = racks.Select(a => a.Technology.IT360ID.Value);
var resource = repository.GetResources(resourceids);
但我不确定如何将其转换var resourceids
为long[]
我的存储库方法接受long[]
假设a.Technology.IT360ID.Value
是 a long
thenresourceids
实际上是 a IEnumerable<long>
。所以你只需要使用它来转换它ToArray()
:
var resourceids = racks.Select(a => a.Technology.IT360ID.Value).ToArray();
var resource = repository.GetResources(resourceids);
请记住,这var
不是“类型” - 它只是让编译器确定类型而不是显式声明它。
这可能是显式声明类型而不是 using 更好的情况var
:
long[] resourceids = racks.Select(a => a.Technology.IT360ID.Value).ToArray();
var resource = repository.GetResources(resourceids);
该方法Select
将返回IEnumerable<long>
。因此,要转换为long[]
,您可以调用ToArray()
which 强制立即查询评估并返回包含查询结果的数组:
var resourceids = racks.Select(a => a.Technology.IT360ID.Value)
.ToArray();
var resource = repository.GetResources(resourceids);