从 object[] 列表中提取值
Extracting value from a list of object[]
我正在使用 Firebird 数据库,以下代码提取了一些数据:
FbDataReader reader = readCommand.ExecuteReader();
var rows = new List<object>();
while (reader.Read())
{
var columns = new object[reader.FieldCount];
reader.GetValues(columns);
rows.Add(columns);
}
现在我已将数据读取到“行”,它看起来像这样:
"ЛР КЛ1 220кВ" 是我需要提取的字符串值。
下面的代码应该这样做:
var nameOfProperty = "property_name";
var propertyInfo = rows[1].GetType().GetProperty(nameOfProperty);
var value = propertyInfo.GetValue(rows[1], null);
我在最后一行得到 System.NullReferenceException,因为“property_name”必须包含真实的 属性 名称。如何获得正确的 属性 名称?
你有列表中的列表。
尝试:
...
var value = propertyInfo.GetValue(rows[1][0], null);
...
我正在使用 Firebird 数据库,以下代码提取了一些数据:
FbDataReader reader = readCommand.ExecuteReader();
var rows = new List<object>();
while (reader.Read())
{
var columns = new object[reader.FieldCount];
reader.GetValues(columns);
rows.Add(columns);
}
现在我已将数据读取到“行”,它看起来像这样:
"ЛР КЛ1 220кВ" 是我需要提取的字符串值。 下面的代码应该这样做:
var nameOfProperty = "property_name";
var propertyInfo = rows[1].GetType().GetProperty(nameOfProperty);
var value = propertyInfo.GetValue(rows[1], null);
我在最后一行得到 System.NullReferenceException,因为“property_name”必须包含真实的 属性 名称。如何获得正确的 属性 名称?
你有列表中的列表。
尝试:
...
var value = propertyInfo.GetValue(rows[1][0], null);
...