我工作的一个ASP.NET MVC(旧版本)的应用程序,我有,学生被赋予基于主代码,并通过学生的最后阿尔法顾问形式名称。LINQ lambda表达式和“&”操作
我想实现下面的代码,但它显示给操作者&
红色的涂鸦:
Error: operator '&' cannot be applied to operands of type '
System.Linq.IQueryable<Appointments.Models.MajorAdviserStudentAssignmentByAlpha>
' and 'lambda expression' and 'lambda expression'
var majorAssignmentByAlpha = FindAllMajorAdviserStudentAssignmentByAlphas()
.Where(
a => a.MajorString == student.StudentMajor) &
(a => ((String.Compare(student.StudentLastName, a.AlphaStart) >= 0) &
(String.Compare(student.StudentLastName, a.AlphaEnd) <= 0))
.FirstOrDefault());
if (majorAssignmentByAlpha != null)
return majorAssignmentByAlpha.Adviser;
我希望得到任何帮助,了解什么是错在这里。 在此先感谢!
以下称'&'是按位经营和''&&是逻辑的答案是错的。 '&'既可以是按位也可以是逻辑的,但如果是逻辑的,则始终执行双方。如果左半部分是假的,'&&'跳过右半部分。 – TheEvilPenguin