根据内容而不是长度,比较两个不同长度的字符串列表

Mat*_*ull 0 c# linq string

我有两个清单,importedexisting.它们可以具有相同的长度或不同的长度.

我想检查是否有任何imported不在的东西existing.

如果它们的长度相同,我可以比较它们并发现与以下内容不匹配:

if(Enumerable.SequenceEqual(imported.OrderBy(i => i), existing.OrderBy(ex => ex)) == false)
Run Code Online (Sandbox Code Playgroud)

如果列表长度相同,则上述工作正常.如果没有,它不会包含另一个不包含的项目,这是有道理的.

如何为不同长度的列表执行此操作?

情景A,应该通过,没有什么imported不在existing:

现有: "One", "Two", "Three"

进口: "One","Two"

情景B,应该失败,"两个"在,imported但它不在existing:

现有: "One", "Two", "Three"

进口: "One","Tow"

我用Intersect,ExceptAny,但他们将努力在方案A,而不是B,反之亦然.

It'*_*ie. 5

imported.Except(existing).Any();
Run Code Online (Sandbox Code Playgroud)