相关疑难解决方法(0)

将匿名类型的强制列表列表到动态对象列表

为什么我不能投List<AnonymousObject>一个List<dynamic>?我有以下代码:

var datasource = someList.Select(o => new { x = o.A, y = o.B });
dgvSomeGridView.DataSource = datasource.ToList();
dgvSomeGridView.DataBind();
Run Code Online (Sandbox Code Playgroud)

然后我使用GridView.DataSource以下代码访问:

var ds = ((List<dynamic>)dgvSomeGridView.DataSource);
....
Run Code Online (Sandbox Code Playgroud)

但它在我投射到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.

请提前帮助,谢谢.

c# anonymous-types .net-4.0

16
推荐指数
2
解决办法
4万
查看次数

标签 统计

.net-4.0 ×1

anonymous-types ×1

c# ×1