如何将gridview数据绑定到ExpandoObject

时间:2011-01-19 21:27:34

标签: c# dynamic expando

当我尝试使用GridView将ASP.NET IEnumerable<ExpandoObject>数据绑定到ObjectDataSource时,我得到以下异常。

  

System.Web.HttpException(0x80004005):DataBinding:'System.Dynamic.ExpandoObject'不包含名为'StoreID'的属性。

任何人都知道如何将数据绑定到ExpandoObjects

1 个答案:

答案 0 :(得分:6)

开源框架Impromptu-Interface可以做到这一点。它有一种通过传入属性名称 - >类型的字典来公开反射的动态对象属性的方法。

IEnumerable<dynamic> tProxiedObject = listOfExpandos.Select(x=>Impromptu.ActLikeProperties(x, x.ToDictionary(k=>k.Key,v=>typeof(object))));