Tôi chỉ xem một vài webcast trước khi tôi đi đầu tiên trong việc thiết kế một vài ứng dụng Entity Framework. Tôi thực sự không đọc nhiều tài liệu đó và tôi cảm thấy như tôi đang đau khổ vì nó bây giờ.ICollection <T> Vs List <T> trong Entity Framework
Tôi đã sử dụng List<T>
trong các lớp học của mình và nó đã hoạt động rất tốt.
Bây giờ tôi đã đọc một số tài liệu và nó nói rằng tôi nên đã sử dụng ICollection<T>
. Tôi đã thay đổi điều này, và nó thậm chí không gây ra một thay đổi bối cảnh mô hình. Đây có phải vì cả hai số List<T>
và ICollection<T>
kế thừa IEnumerable<T>
và đó thực sự là điều bắt buộc đối với EF?
Tuy nhiên, nếu trường hợp này xảy ra, tại sao tài liệu EF nêu rõ rằng yêu cầu IEnumerable<T>
thay vì ICollection<T>
?
Trong mọi trường hợp, có bất kỳ nhược điểm nào đối với những gì tôi đã làm hay tôi nên thay đổi nó?
Vì vậy .... chỉ cho tôi hiểu một chút nữa - Danh sách thừa hưởng IList, mà thừa hưởng ICollection, mà thừa hưởng IEnumerable ? – wil
Vâng, đó là chuỗi. 'Danh sách' phải triển khai thực hiện từng giao diện đó ('IList ', 'ICollection ', 'IEnumerable ') vì hệ thống phân cấp thừa kế. Để hoàn thành, 'IList ' cũng chọn các giao diện 'IList',' ICollection' và 'IEnumerable' không chung chung. –
Cảm ơn bạn ... Một số tính năng Ixxx vẫn thoát khỏi sự hiểu biết của tôi! Bạn đã có ý nghĩa, tuy nhiên, một điều cuối cùng đó là gây phiền nhiễu cho tôi, nếu Ixx kế thừa khác của IEnumerable, làm thế nào để nó thêm vào IEnumerable nếu một Ienumerable chỉ đọc? ... Nếu nó quá phức tạp, đừng lo lắng, khi tôi có một chút thời gian, tôi sẽ cố gắng kích hoạt phản xạ! – wil