C# 或操作员未在LINQ中工作
我需要选择一个不包含2年级和8年级的列表。现在,所有等级为2的项目也会被选中。请看下面是我的代码C# 或操作员未在LINQ中工作,c#,linq,entity-framework,linq-to-entities,C#,Linq,Entity Framework,Linq To Entities,我需要选择一个不包含2年级和8年级的列表。现在,所有等级为2的项目也会被选中。请看下面是我的代码 var subjectList = printViewModel.GetSubjects().Where(p => p.Grade != "2" || p.Grade != "8"); PrintTemplateViewModel类 public class PrintTemplateViewModel { public List<SubjectsViewModel> l
var subjectList = printViewModel.GetSubjects().Where(p => p.Grade != "2" || p.Grade != "8");
PrintTemplateViewModel类
public class PrintTemplateViewModel
{
public List<SubjectsViewModel> lstSubjectsViewModel { get; set; }
public List<SubjectsViewModel> GetSubjects()
{
return lstSubjectsViewModel;
}
}
public class SubjectsViewModel
{
public string Grade { get; set; }
}
公共类PrintTemplateViewModel
{
公共列表lstSubjectsViewModel{get;set;}
公共列表GetSubjects()
{
返回lstSubjectsViewModel;
}
}
公共类SubjectsViewModel
{
公共字符串等级{get;set;}
}
您想要的是&&
,而不是|
。不管字符串值是什么,它总是不是“2”或不是“8”。不可能同时是两个!:) 您想要的是&&
,而不是|
。不管字符串值是什么,它总是不是“2”或不是“8”。不可能同时是两个!:) 或工作正常。是你的逻辑不起作用:D
使用&&
,因为您要检查这两个值是否为真 或工作正常。是你的逻辑不起作用:D
使用
&&
,因为您要检查这两个值是否为真 既然已经有了一个公共列表lstSubjectsViewModel{get;set;}
,为什么还要有一个公共列表GetSubjects()
方法?既然已经有了一个公共列表lstSubjectsViewModel{get;set;}
,为什么还要有一个公共列表GetSubjects()
方法?