C# .Where lambda表达式中的System.Collections.Generic.List类型不支持比较运算符

C# .Where lambda表达式中的System.Collections.Generic.List类型不支持比较运算符,c#,lambda,C#,Lambda,我正在使用lambda表达式,我得到一个异常: System.NotSupportedException:'类型'System.Collections.Generic.List'1[System.Int32]不支持比较运算符' 在此摘录中,MyPrettyFunction返回一个静态列表,而a.ValueA和B是int 谢谢你的帮助!多谢各位 你能分享完整的代码吗,因为下面的代码对我来说很好 namespace TestProjects { public class Test {

我正在使用lambda表达式,我得到一个异常:

System.NotSupportedException:'类型'System.Collections.Generic.List'1[System.Int32]不支持比较运算符'

在此摘录中,
MyPrettyFunction
返回一个静态
列表
,而
a.ValueA
B
int


谢谢你的帮助!多谢各位

你能分享完整的代码吗,因为下面的代码对我来说很好

namespace TestProjects
{
    public class Test
    {
        public int ID;
        public int ValueA;
        public int ValueB;
    }
    class Program
    {
        static void Main(string[] args)
        {
            List<Test> obj = new List<Test>
            {
                new Test{ID=1,ValueA=2,ValueB=3},
                new Test{ID=2,ValueA=2,ValueB=3},
                new Test{ID=3,ValueA=2,ValueB=3},
                new Test{ID=4,ValueA=2,ValueB=3},
            };
           var Test= obj.Where(a => a.ID == 3 && MyPrettyFunction(a.ValueA).Contains(a.ValueB)).ToList();
        }
        public static List<int> MyPrettyFunction(int i)
        {
            return new List<int>{ 1,2,3,5};
        }
    }
}
命名空间测试项目
{
公开课考试
{
公共int ID;
公共价值a;
公共价值b;
}
班级计划
{
静态void Main(字符串[]参数)
{
List obj=新列表
{
新测试{ID=1,ValueA=2,ValueB=3},
新测试{ID=2,ValueA=2,ValueB=3},
新测试{ID=3,ValueA=2,ValueB=3},
新测试{ID=4,ValueA=2,ValueB=3},
};
var Test=obj.Where(a=>a.ID==3&&MyPrettyFunction(a.ValueA).Contains(a.ValueB)).ToList();
}
公共静态列表MyPrettyFunction(int i)
{
返回新列表{1,2,3,5};
}
}
}

这实际上是LINQ到EF(或类似)数据库的用法吗?这很重要-有些东西不能简单地翻译成SQL,我需要更多的代码来帮助你。@mathis1337你是什么意思?lambda很好-Where子句返回一个用于过滤结果的
bool
。您的代码在一个简单的
列表上运行良好。请发布一个复制问题的代码示例,或包含有关数据源的更多详细信息。这应该是注释,而不是注释answer@RufusLA.这对sundara(代表)来说还不可能,b:它不适合/格式;我个人:我同意here@MarcGravell好的,我们可以同意不同意。我认为:a)没有代表发表评论并不意味着评论应该作为答案发布,(b)示例代码不需要告诉OP他们的问题不符合给定的信息。我很高兴看到主持人在判断这些类型的答案时表现出一定的灵活性,这些答案不符合答案格式,但仍然有价值。在这种情况下,拥有一个功能完整的代码示例可能有助于OP通过评估差异来找出代码不起作用的原因。
namespace TestProjects
{
    public class Test
    {
        public int ID;
        public int ValueA;
        public int ValueB;
    }
    class Program
    {
        static void Main(string[] args)
        {
            List<Test> obj = new List<Test>
            {
                new Test{ID=1,ValueA=2,ValueB=3},
                new Test{ID=2,ValueA=2,ValueB=3},
                new Test{ID=3,ValueA=2,ValueB=3},
                new Test{ID=4,ValueA=2,ValueB=3},
            };
           var Test= obj.Where(a => a.ID == 3 && MyPrettyFunction(a.ValueA).Contains(a.ValueB)).ToList();
        }
        public static List<int> MyPrettyFunction(int i)
        {
            return new List<int>{ 1,2,3,5};
        }
    }
}