var result=from stdnt in students
join lssn in lessons on new {number ==stdnt.state==true ? stdnt.newnumber : s.oldnumber}
equals new {number ==stdnt.state==true ? lssn.newnumber : lssn.oldnumber}
select new {.... };
'lssn' 名称 'equals' 运算符不尊重右侧。表达式中的“等于”运算符考虑换边。