如何从对象数组中解析数据
how to parse data from array of objects
我得到了 ienumerable 方法,它从数据库中读取数据并将这些数据放入对象数组中
while (reader.Read())
{
var values = new object[reader.FieldCount];
reader.GetValues(values);
yield return values;
}
在另一种方法中,我正在迭代这些对象
foreach (var items in repo.ExecuteReader()
{
rss.Id = items[0]; // not work
yield return items;
}
如何索引 'items' 的数组?
SqlDataReader reader = repo.ExecuteReader();
while (reader.reas.Read()) {
rss.Id = (int)reader[0]; // should work
更新
试试这个
ExecuteReader()
方法的结果必须拆箱(看起来像演员,但这是拆箱)到正确的类型,然后才能分配给一个对象或变量。
Are you asking why?
先尝试施法,见下:
foreach (var items in repo.ExecuteReader()
{
var obj[] = (object[])items;
rss.Id = obj[0];
yield return obj;
}
解决方案由Hari Prasad提供,只需要从
foreach (var items in repo.ExecuteReader()) {}
至
foreach (var object[] items in repo.ExecuteReader()
现在索引和转换工作正常
我得到了 ienumerable 方法,它从数据库中读取数据并将这些数据放入对象数组中
while (reader.Read())
{
var values = new object[reader.FieldCount];
reader.GetValues(values);
yield return values;
}
在另一种方法中,我正在迭代这些对象
foreach (var items in repo.ExecuteReader()
{
rss.Id = items[0]; // not work
yield return items;
}
如何索引 'items' 的数组?
SqlDataReader reader = repo.ExecuteReader();
while (reader.reas.Read()) {
rss.Id = (int)reader[0]; // should work
更新
试试这个
ExecuteReader()
方法的结果必须拆箱(看起来像演员,但这是拆箱)到正确的类型,然后才能分配给一个对象或变量。
Are you asking why?
先尝试施法,见下:
foreach (var items in repo.ExecuteReader()
{
var obj[] = (object[])items;
rss.Id = obj[0];
yield return obj;
}
解决方案由Hari Prasad提供,只需要从
foreach (var items in repo.ExecuteReader()) {}
至
foreach (var object[] items in repo.ExecuteReader()
现在索引和转换工作正常