我有一张桌子,我需要按财政年度过滤数据。
财政年度介于April 1 of current year
和March 31st of next year
之间。例如:当前年度为2016
,因此当前财政年度介于April 1 2016
和March 31 2017
之间。
表格
Id CenterId SlNo Date
1 1 5 2016-01-09 10:51:43.480
2 2 10 2016-01-09 10:51:43.480
我希望将Slno
和CenterId=1
放在Date will between current financial year
。
我关注的是Do i need another column of date for filtering financial year
。
任何帮助都非常感谢?
答案 0 :(得分:1)
如果不创建新列,就不能这样做。只需计算当前的财政年度日期: -
DateTime currentFinancialYearStartDate = new DateTime(DateTime.Today.Year, 4, 1);
DateTime currentFinancialYearEndDate = new DateTime(DateTime.Today.Year + 1, 3, 31);
然后,只需在您的过滤器中使用它们: -
var result = dbContext.Sample.Where(x => x.CenterId == 1
&& x.Date >= currentFinancialYearStartDate
&& x.Date <= currentFinancialYearEndDate)
.Select(x => x.Slno);