下拉列表显示Getdate() +2和- 2年

本文关键字:2年 列表显示 Getdate | 更新日期: 2023-09-27 18:16:43

我搜索了互联网,但没有找到答案,不确定这是不是一个愚蠢的问题,但这里是

我想创建一个下拉列表,它会自动将年份添加到列表中,而不需要我添加年份。有两种选择来配置数据源并创建查询或在c#

中编写查询

我只是想知道是否有可能显示当前年份+ 2年和- 2年,纯粹使用getdate()。例如,我想要显示2012,2013,2014,2015,2016,

下面的代码将只显示2012年,但我希望其他年份也显示

select Year(dateadd(year, -2, getdate())) 

我不确定我这样做是否正确,但我希望下拉列表能自动显示年份。

如果你需要进一步的信息,请告诉我,我不太擅长c#,如果你要降低我的问题的评级,至少让我知道为什么....

下拉列表显示Getdate() +2和- 2年

在您的场景中,您希望从c#代码中绑定值,这比查询SQL Server快得多。

例如,

int start = DateTime.Now.Year - 2;
int end = start + 5;
for (int i = start; i < end; i++) {
    DropDownList1.Items.Add(new ListItem(i.ToString()));
}

您可以使用统计表:

SELECT TOP 5 --five years
IDENTITY(INT,-2,1) AS N
INTO #tally
FROM Master.dbo.SysColumns
SELECT YEAR(DATEADD(YEAR,N,GETDATE()))
FROM #tally
DROP TABLE #tally