.Distinct()
不起作用,因为您看到它正在返回重复的记录(具有相同的ID)
我也尝试过:
Vendors = c.Item.VendorSpecifications
.Select(v => new APVendorSimpleView { Id = v.VendorId, Name = v.Vendor.Name, Code = v.Vendor.Code })
.GroupBy(x => x.Id)
.Select(x => x.First())
.ToList(),
它引发了异常
答案 0 :(得分:3)
在解释区别之前。您的异常感觉像是null ref exception
中来自v.Vendor.Name
的{{1}}。如果供应商为select APVendorSimpleView
,则无法访问Name属性,并且会出现异常。
对于null
,这是文档中提到的内容。
https://docs.microsoft.com/en-us/dotnet/api/system.linq.enumerable.distinct?view=netframework-4.8
如果要从某些自定义数据类型的对象序列中返回不同的元素,则必须在该类中实现IEquatable通用接口。下面的代码示例演示如何以自定义数据类型实现此接口并提供GetHashCode和Equals方法。
您的Distinct()
模型是否符合上述条件?
APVendorSimpleView
答案 1 :(得分:0)
怎么样
<div class="specific-div" style="display:none"></div>
const isDisplayed = document.getElementsByClassName('specific-div')[0].style.display !== 'none';
// or
const divs = document.getElementsByClassName('specific-div');
divs.forEach(div => doSomething());