Tôi đã sử dụng từ khóa "chọn" và phương pháp mở rộng để trả về một IEnumerable<T>
với LINQ, nhưng tôi có nhu cầu trả lại một số chung chung Dictionary<T1, T2>
và không thể tìm ra. Ví dụ tôi đã học được điều này từ việc sử dụng một cái gì đó trong một biểu mẫu tương tự như sau:Chọn từ điển <T1, T2> với LINQ
IEnumerable<T> coll = from x in y
select new SomeClass{ prop1 = value1, prop2 = value2 };
Tôi cũng làm điều tương tự với các phương pháp mở rộng. Tôi giả định rằng vì các mục trong một Dictionary<T1, T2>
có thể được lặp lại thành KeyValuePair<T1, T2>
mà tôi chỉ có thể thay thế "SomeClass" trong ví dụ trên với "new KeyValuePair<T1, T2> { ...
", nhưng điều đó không hoạt động (Khóa và Giá trị được đánh dấu là chỉ đọc, vì vậy tôi không thể biên dịch mã này).
Điều này có thể xảy ra không hoặc tôi có cần thực hiện việc này trong nhiều bước không?
Cảm ơn.
+1 Whuh. Điều này mở ra những khả năng mới về cách tôi tiếp cận tạo các đối tượng dữ liệu mới. – Sung
Tuyệt vời, vui vì bạn sẽ sử dụng nó, tôi biết điều đó đã giúp tôi trong một số trường hợp. –
Egads! Bây giờ là năm 2017 và tôi chỉ mới phát hiện ra điều này !! –