我有以下查询,我需要在2010年至2016年之间运行多年。
以下查询中的FirstValidYear是我从其他查询获得的整数年份值。无论2010年的价值如何,那么我正在寻找一种方法来运行2010年到2016年的查询(在FirstValidYear和FirstValidYear +6之间)
var ValidationList = (
join t1 in table1
join t2 in table2 on t1.colID equals t2.ID
where t1Field.IsActive && // Run this for FirstValidYear , FirstValidYear +1, FirstValidYear +2 , ..., FirstValidYear + 6)
select new
{
t1.Name,
Year = FirstValidYear, // Needs to be incremented for each run
needsNewTest = !isValidYear(
FirstValidYear,
Convert.ToDateTime("6/1/" + (FirstValidYear - 1).ToString()))
}
).ToList();
FirstValidYear是一个数据库列,有一年说2010年。所以查询需要运行2010年,2011年,... 2016年。
有人可以帮忙吗?
答案 0 :(得分:0)
您的原始代码似乎缺少某些内容,因此我只会包含相关内容:
int firstValidYear = GetFirstValidYear();
int sixYearsLater = firstValidYear + 6;
where x.WhatIsTheComparisonField >= firstValidYear &&
x.WhatIsTheComparisonField <= sixYearsLater