C#ObservableCollection与预期不同

从我在Stack和其他资源上看到的内容,这应该产生一个不同的对象集合(基本上是唯一的),然而,这并不是我观察到的结果.任何帮助,将不胜感激.

ObservableCollection<CompanySummary> companies = 
   new ObservableCollection<CompanySummary>(DispatchListOriginal.Select(
   x => new CompanySummary { CompanyName = x.CompanyName, CompanyId = x.CompanyId })
   .Distinct());

(以上都是一行)

我也试过这个:

ObservableCollection<CompanySummary> companies = new ObservableCollection<CompanySummary>(DispatchListOriginal.Select(x => new CompanySummary { CompanyName = x.CompanyName, CompanyId = x.CompanyId }));
CompanyList = new ObservableCollection<CompanySummary>(companies.Distinct());

两种情况下的结果都是CompanySummary对象的集合,但是有重复的对象.

解决方法:

Distinct使用Equals方法.
确保CompanySummary.Equals执行它应该执行的操作.

上一篇:C#ObservableCollection OnCollectionChanged在项目更改时不触发


下一篇:javascript-如何在现有的html文件和网站中包含Angular 7应用程序?