我下面的sql代码计算了财政年度,因此现在我想使用c#创建财政年度的网页,而且我必须具有从4月到3月的月份下拉列表。我该怎么做,对应该如何实施感到困惑。 参见下面的代码。
DECLARE @start_date DATETIME, @end_date DATETIME,@cur_date DATETIME
SET @cur_date= (select getdate())
IF MONTH(@cur_date) IN (1,2,3)
BEGIN
SET @start_date= CAST( CAST(YEAR(@cur_date)-1 AS VARCHAR)+'/04/01' AS DATE)
SET @end_date= CAST( CAST(YEAR(@cur_date) AS VARCHAR)+'/03/31' AS DATE)
END
ELSE
BEGIN
SET @start_date= CAST( CAST(YEAR(@cur_date) AS VARCHAR)+'/04/01' AS DATE)
SET @end_date= CAST( CAST(YEAR(@cur_date)+1 AS VARCHAR)+'/03/31' AS DATE)
END
SELECT @start_date AS ST_FI,@end_date AS END_FY
答案 0 :(得分:0)
首先,您将需要一种在asp.net mvc控制器中调用查询或sp的方法。 我假设您可以做到,现在在c#中将开始日期和结束日期作为变量。
这是我需要为控制器准备的一些代码:
DateTime startdate; //value coming from db
DateTime enddate; //value coming from db
List<SelectListItem> listItems= new List<SelectListItem>();
var count = 0;
while(startdate <= enddate)
{
count++;
listItems.Add(new SelectListItem{Text = startdate.ToString("MMMM"), count);
startdate = startdate.AddMonths(1);
}
接下来,您将需要将listItems以及另一个变量(如selectedMonth)添加到模型中,以获取下拉选择的值,并将其从控制器返回到您的视图。
最后,您将其添加到视图中:
@Html.DropDownListFor(model => model.selectedMonth, model.listItems, "-- Select a month --")