Mik*_*e L 6 c# entity-framework-core
C#中Collection和List有什么区别?我的意思是我应该使用哪一个作为导航属性:
public Collection<OrderDetail> OrderDetails { get; set; }
Run Code Online (Sandbox Code Playgroud)
或者
public List<OrderDetail> OrderDetails { get; set; }
Run Code Online (Sandbox Code Playgroud)
似乎没有这方面的文档,但实体框架支持任何IEnumerable<T>
集合导航属性。
所以你可以将它们声明为:
IEnumerable<T>
ICollection<T>
Collection<T>
HashSet<T>
IList<T>
List<T>
可能还有更多。就实体框架而言,没有什么区别,它会在运行时分配适当的一个,并且除了调用其中的AddRange()
大多数之外,还可以对每个实体执行它所做的所有操作,但是您什么时候想使用它呢?
例如,如果您想要数据绑定,您可以使用ObservableCollection<T>
,否则我会使用仍然允许添加项目的最简洁的界面:ICollection<T>
。
归档时间: |
|
查看次数: |
2869 次 |
最近记录: |