为什么我不能将 aList<AnonymousObject>
转换为 a List<dynamic>
?我有以下代码:
var datasource = someList.Select(o => new { x = o.A, y = o.B });
dgvSomeGridView.DataSource = datasource.ToList();
dgvSomeGridView.DataBind();
然后我使用GridView.DataSource
以下代码访问:
var ds = ((List<dynamic>)dgvSomeGridView.DataSource);
....
但它在我将它投射到的行上抛出一个错误List<dynamic>
,它说:
无法将类型的对象
System.Collections.Generic.List'1[<>f__AnonymousType0'8[System.Int32,System.String]]
转换为类型System.Collections.Generic.List'1[System.Object]
。
为什么我不能将匿名类型的列表强制转换为 a dynamic
,或者像错误所说的那样对object
类型进行强制转换?我该如何解决这个问题?
我的代码是 C#,框架 4.0,在 VS2010 Pro 中构建,平台是 ASP.NET。
请帮助,提前谢谢。