繁体   English   中英

如何将包含Long的var转换为Long []

[英]How to convert a var which contains Long to an Long[]

我有以下几点:

var resourceids = racks.Select(a => a.Technology.IT360ID.Value);
var resource = repository.GetResources(resourceids);

但是我不确定如何将var resourceids转换为long[]因为我的存储库方法接受long[]

假设a.Technology.IT360ID.Valuelong那么resourceids实际上是IEnumerable<long> 因此,您只需要使用ToArray()进行转换:

var resourceids = racks.Select(a => a.Technology.IT360ID.Value).ToArray();
var resource = repository.GetResources(resourceids);

请记住, var不是“类型”-只是让编译器确定类型而不是显式声明它。

在这种情况下,最好显式声明类型而不是使用var

long[] resourceids = racks.Select(a => a.Technology.IT360ID.Value).ToArray();
var resource = repository.GetResources(resourceids);

Select方法将返回IEnumerable<long> 因此,要转换为long[] ,可以调用ToArray()强制立即执行查询评估并返回包含查询结果的数组:

var resourceids = racks.Select(a => a.Technology.IT360ID.Value)
                       .ToArray();

var resource = repository.GetResources(resourceids);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM