Tại sao tôi không thể truyền List<AnonymousObject>
đến List<dynamic>
? Tôi có mã sau đây:Cast Danh sách loại Ẩn danh vào Danh sách các đối tượng động
var datasource = someList.Select(o => new { x = o.A, y = o.B });
dgvSomeGridView.DataSource = datasource.ToList();
dgvSomeGridView.DataBind();
Sau đó, tôi truy cập vào GridView.DataSource
với đoạn mã sau:
var ds = ((List<dynamic>)dgvSomeGridView.DataSource);
....
Nhưng nó ném một lỗi trên dòng nơi tôi bỏ nó vào List<dynamic>
, nó nói:
Không thể truyền đối tượng thuộc loại
System.Collections.Generic.List'1[<>f__AnonymousType0'8[System.Int32,System.String]]
để nhậpSystem.Collections.Generic.List'1[System.Object]
.
Tại sao tôi không thể truyền danh sách loại ẩn danh tới một số dynamic
hoặc do lỗi nói đến loại object
? Làm cách nào tôi có thể giải quyết vấn đề này?
Mã của tôi nằm trong C#, framework 4.0, xây dựng trong VS2010 Pro, nền tảng là ASP.NET.
Xin vui lòng trợ giúp, cảm ơn trước.
đừng quên thêm ' sử dụng System.Linq; ' trong tiêu đề tài liệu của bạn trong trường hợp bạn chưa –