C# 将数据行[]转换为列表的最佳方式是什么<;int>;?

C# 将数据行[]转换为列表的最佳方式是什么<;int>;?,c#,generics,C#,Generics,我想将datarow[]转换为列表 列出用户ID; 公共无效GetGravatars() { var cmd=access.GetSqlCommandStoredProcedure(“uspMembershipGetUserGravatarList”); var table=access.ExecuteDataTable(cmd、DAL.Logic.Common.connectionString.User); int[]行=新的int[table.rows.Count]; table.Rows.

我想将
datarow[]
转换为
列表

列出用户ID;
公共无效GetGravatars()
{
var cmd=access.GetSqlCommandStoredProcedure(“uspMembershipGetUserGravatarList”);
var table=access.ExecuteDataTable(cmd、DAL.Logic.Common.connectionString.User);
int[]行=新的int[table.rows.Count];
table.Rows.CopyTo(行,0);
UserIds=rows.ToList();
}
公共bool UserHasGravatar(int userId)
{
userid.Find(
代表(int i)
{
返回i==userId;
}
);
返回false;
}
这样做的最佳方式是什么

编辑:我的代码需要循环遍历一个用户列表,大约40000个,如果他们没有图像,则更新他们的图像,因此我认为最快的方法是,将所有带有图像的用户ID加载到一个列表中,然后对照数据库中的所有用户ID进行检查,如果用户ID不存在,则更新图像,否则继续

rows.Select(r=>/*However you get a single int from a single row*/).ToList();
更新:

我假设您使用的是.NETFramework 3.5?但我可能错了

更新:


我假设您使用的是.NETFramework 3.5?但是我可能错了…

你能提供更多关于你想要实现的目标的信息吗?你想要一个INT列表还是一系列提示?问题标题和示例代码似乎与您的要求不一致。您能否提供有关您试图实现的目标的更多信息?您想要整数列表还是提示数组?问题标题和示例代码似乎不同意您的要求。他需要一个int[]-数组。所以是ToArray();-)哦,他的UserIds类型显示列表,看起来规格与“:”相矛盾,是的,你可以简单地使用另一个扩展方法,ToArray()对不起,我的意思是我想要一个列表,他需要一个int[]-数组。所以是ToArray();-)哦,他的UserIds类型显示了列表,看起来规范是矛盾的:)是的,你可以简单地使用另一个扩展方法,ToArray()对不起,我的意思是我想要一个列表
rows.Select(r=>/*However you get a single int from a single row*/).ToList();