确定列表中的元素是否包含相同的值

Determine if an element in a list contains the same value

我有一个包含多个 Guid 的列表。

List<Guid> recordIds = new List<Guid>;

我需要验证此列表中的 Guid 是否完全相同。

所以我没有迭代整个列表,而是考虑使用某种方式:

var IdsAreIdentical = recordIds.TrueForAll(x => x == DontKnowWhatToPutHere);

我的问题是我不太清楚它的用法。也许有人可以帮我指明正确的方向。

如果你想验证是否所有的id都相同,你可以验证所有的值都与第一个相同:

bool allIdentical = recordIds.TrueForAll(i => i.Equals(recordIds.FirstOrDefault());

另一种变体是验证您拥有的不同值的数量。如果结果为1,则id全部相同。

var allIdentical = list.Distinct().Count() == 1;