我只是想执行一个LINQ查询来返回一组明年正在运行的课程ID和课程标题。作为其中的一部分,我需要执行OR查询,因为我也希望返回与明年有关的数据,这是在我的数据库中作为字符串保存并且是我唯一的问题,所以任何帮助都将是赞赏。
var result = (
from a in Offering
join b in Courseinfo on a.CourseID equals b.CourseID
into temp
from c in temp
where c.Year == "10/11" || "11/12"
select new { c.CourseID, c.CourseTitle }).DefaultIfEmpty();
答案 0 :(得分:5)
将您的查询重写为where c.Year == "10/11" || c.Year == "11/12"
。
答案 1 :(得分:1)
如果你想能够动态选择年份,那么你可以做这样的事情
var years = new List<string>{"1989", "1994", "2004", "2007"};
然后将where
更改为
where years.Contains(c.Year)
答案 2 :(得分:1)
这是一个基本的语法错误 - 在C#中你不能说:
“年份是2010年或2011年”。
你必须说:
“年份是2010年,或者年份是2011年”
所以你重写了这个:
where c.Year == "10/11" || "11/12"
这样:
where c.Year == "10/11" || c.Year == "11/12"