我需要知道我正在处理的列表是否仅仅包含一些特定的值。
var list = new List<string> { "First", "Second", "Third" };
如果我想知道列表中是否至少有一个值为“First”的项目,我使用Any关键字:
var result = list.Any(l => l == "First");
我该如何编写一个Linq表达式,仅在列表包含“First”和“Second”值时返回true/false?
我需要知道我正在处理的列表是否仅仅包含一些特定的值。
var list = new List<string> { "First", "Second", "Third" };
如果我想知道列表中是否至少有一个值为“First”的项目,我使用Any关键字:
var result = list.Any(l => l == "First");
我该如何编写一个Linq表达式,仅在列表包含“First”和“Second”值时返回true/false?
我不完全确定您想要什么,但如果您想确保“First”和“Second”只出现一次,可以采取以下方法:
var result = list.Where(l => l == "First" || l =="Second")
.Distinct()
.Count() == 2;
或者:
var result = list.Contains("First") && list.Contains("Second");
var result = !whiteList.Except(list).Any();
var onlyValidValues = !list.Except(validValues).Any();
var validSet = new HashSet<string>(requiredValues);
var allAndOnlyValidValues = validSet.SetEquals(candidateSequence);
var list = new List<string> { "First", "Second", "Third" };
var comparelist = new List<string> { "First", "Second" };
var test = list.Intersect(comparelist).Distinct().Count() == comparelist.Count();