将此var转换为long列表?

Has*_*zar 1 c# .net-4.0 linq-to-sql winforms

我有一个屏幕附在这里,我需要知道如何将列表转换为Longs列表?

var x = SchedulerMatrixStorage.Resources.Items.Select(col => col.Id);
Run Code Online (Sandbox Code Playgroud)

其中,Id是类型 Object

在此输入图像描述

Ada*_*son 5

由于您的名单似乎是同质的,你可以利用这一点是.NET框架的一部分内置的转换函数:

var x = SchedulerMatrixStorage.Resources.Items
       .Select(col => Convert.ToInt64(col.Id)).ToList();
Run Code Online (Sandbox Code Playgroud)

Convert静态类提供了几个转换函数,一个基团,其将各种类型的对象转换为各种内置的值类型,像long.大多数这些函数也有一个带object参数的重载(我假设它是你的集合从根本上包含的).

请注意,如果提供的对象无法转换为a long(例如,如果您要传入,例如,a Form),则此函数将在运行时失败,但通过屏幕截图判断这应该适合您.