【发布时间】:2015-06-02 17:20:40
【问题描述】:
我必须编写一个管理模块,系统管理员可以在其中检查他选择的表中的所有值。由于数据库有超过 100 个表,我编写了一个通用方法,该方法返回带有数据的 IEnumerable<object>:
public IEnumerable<Object> getAllData(string tableName)
{
IEnumerable<Object> result = new List<Object>();
string sql = string.Concat("SELECT * FROM ", tableName);
using (var uow = _provider.GetUnitOfWork())
{
result = uow.Instance.Fetch<Object>(sql);
}
return result;
}
结果中的每个项目都是object{NPoco.PocoExpando} 类型,我需要获取每个项目的键和值以将它们转换为单个字符串。当我在集合中创建一个 foreach 时,这就是每个项目的内容:
那么,我怎样才能访问那些“键”和“值”属性?获取字典也可能会有所帮助。
编辑: 这是有效的代码,感谢@Shaun Luttin 的回答
foreach (object item in result)
{
foreach (var property in (IDictionary<String, Object>)item)
{
//Do awesome stuff!
}
}
【问题讨论】:
-
PocoExpando 非常类似于 ExpandoObject
标签: c# generic-list npoco