我目前的情况是:
var ids = dt.AsEnumerable().Select(x => (int)x["Id"]).ToList();
然而,我还需要检索另一列,名为“level”,类型为 int。期望的输出类似于:
var<int,int> ids = ....
一种方法是使用匿名类型:
var ids = dt.AsEnumerable().Select(x => new
{
Id = (int)x["Id"],
Level = (int)x["level"]
}).ToList();
List<>
,因此现在您可以执行以下操作:var level = ids[0].Level
更新:如果您需要将它们存储在Session
中以进行持久化,那么我建议构建一个真正的类型(class
),我们称其为Foo
。这将更改代码如下:
var ids = dt.AsEnumerable().Select(x => new Foo
{
Id = (int)x["Id"],
Level = (int)x["level"]
}).ToList();
当你需要从Session
中获取它们时:
var ids = (List<Foo>)Session["ids"];