C# C清单问题,包括清单

C# C清单问题,包括清单,c#,asp.net,c#-4.0,C#,Asp.net,C# 4.0,我有一个问题,我似乎无法解决它,基本上我有两个int列表,一个可能包括,或者不包括,另一个,我需要画一个if条件,在传入列表中检查它来自哪个int集合,并做出决定,所以我使用了 我有一个布尔函数 public bool firstiterate() { var listint= new List<int>(){1,2,3,4}; var incoming= returned.Select(s=s.ref); if(incoming.All(listint.Contain

我有一个问题,我似乎无法解决它,基本上我有两个int列表,一个可能包括,或者不包括,另一个,我需要画一个if条件,在传入列表中检查它来自哪个int集合,并做出决定,所以我使用了

我有一个布尔函数

public bool firstiterate()
{
  var listint= new List<int>(){1,2,3,4};
  var incoming= returned.Select(s=s.ref);

  if(incoming.All(listint.Contains)
  {
  //dosomething
  }
}
第二个功能是:

public bool seconditerate()
{
  var listint= new List<int>(){1,2,3,4};
  var incoming= returned.Select(s=s.ref);

  if(incoming.Any(listint.Contains) && !incoming.All(listint.Contains)
  {
  //dosomething
  }
}
但是我所有的布尔值在所有情况下都返回null,即使其中任何一个都应该返回一些东西,我做错了什么。欢迎任何帮助


谢谢

这无法重现。把它变成一个小而完整的程序。目前,错误并不是您认为的那样

我的代码:

        var returned = new List<int> { 4, 5, 8 };

        var listint = new List<int>() { 1, 2, 3, 4 };
        var incoming = returned.Select(s => s);       //

        if (incoming.All(listint.Contains))
        {
            Console.WriteLine("if1");
        }

        if (incoming.Any(listint.Contains) && !incoming.All(listint.Contains))
        {
            //dosomething
            Console.WriteLine("if2");
        }

这将打印if2

这些怎么可能工作?收入不是条件的一部分。对不起,这是我这边的一个输入错误,现在更正。谢谢你的答案,但这没有按预期工作,而不是像你在帖子上说的那样打印if2,它总是打印if1,不确定原因,但我已经没有可能了。这段代码,有了这些数据,应该打印if2。仔细检查你的发现。不仅仅是理论上的——把这段代码放到一个新的、干净的控制台项目中。检查它是否有效,并开始寻找差异。根据你在这里发布的内容,没有人能够进一步帮助你。大家好,作为一个提示,我决定使用两个不同的LINQ查询来获得结果,在我的情况下,它似乎是有效的,不知道为什么。所以我使用了'code'Var incomingAll=returned.Selects=>s.Alllistint.Contains;和'code'var incomingAny=returned.Selects=>s.anylistin.Contains