Vì vậy, nhiều lần chúng ta có một hàm chấp nhận một IEnumerable hoặc ICollection như một tham số. Trong trường hợp chúng tôi có các mục duy nhất, nhưng không có bộ sưu tập để giữ họ, chúng ta phải tạo ra một bộ sưu tập trước khi chuyển chúng đến chức năng, như:Cách dễ nhất và nhỏ gọn nhất để tạo một số điện thoại IE2umerhoặc ICollection <T> là gì?
T o1, o2, o3;
Foo(new T[] { o1, o2, o3 });
Tôi luôn tạo ra một mảng hoặc một danh sách, như tôi đã thực hiện trong ví dụ cuối cùng. Nhưng tôi tự hỏi, có cách nào tao nhã hơn để tạo IEnumerable hoặc ICollection được yêu cầu không?
Nó sẽ là khá mát mẻ, nếu người ta có thể làm điều này:
Foo({ o1, o2, o3 });
Và trình biên dịch sẽ tạo ra bộ sưu tập trừu tượng nhất có thể đó sẽ đáp ứng các nhu cầu của IEnumerable hoặc ICollection (tùy thuộc vào một chức năng chấp nhận).
Dù sao đi nữa, làm thế nào bạn có thể vượt qua o1, o2 và o3 đến một tham số IEnumerable hoặc ICollection?
Tôi đề nghị rằng 'AsList()' không phải là một tên tốt cho một phương pháp mà trả về một 'Enumerable', không phải 'List'! Làm thế nào về 'Enumerable.Create'? –