ASP.net For循环问题
本文关键字:问题 循环 For net ASP | 更新日期: 2023-09-27 18:03:49
我有一个For循环的问题,它看起来像这样
for (int i = 0; i < dt.Rows.Count; i++)
//for (int i = 0; i < System.Math.Min(dt.Rows.Count, 3); i++)
{
string date = Convert.ToDateTime(dt.Rows[i]["date"]).ToShortDateString();
schedule[date] = (schedule[date] != null ? schedule[date].ToString() : "") + Server.HtmlEncode(dt.Rows[i]["todo"].ToString()) + "<br />" + dt.Rows[i]["time"].ToString() + "<br />";
}
return schedule;
这是我用asp.net日历控件制作的日历。它循环通过所有记录到我的数据库,并给出了我的时间表(该日期的记录),但我不想显示超过3行文本,你可以添加到日历(数据库记录)。你知道我该怎么做吗?
Thank you, kind regards, The Designer
您可以维护为每个日期添加的行数的计数:
Dictionary<string, int> schedulesDateCount = new Dictionary<string, int>();
for (int i = 0; i < dt.Rows.Count; i++)
{
string date = Convert.ToDateTime(dt.Rows[i]["date"]).ToShortDateString();
if(!schedulesDateCount.ContainsKey(date))
schedulesDateCount[date] = 0;
if(schedulesDateCount[date] < 3)
{
schedule[date] = (schedule[date] != null ? schedule[date].ToString() : "") + Server.HtmlEncode(dt.Rows[i]["todo"].ToString()) + "<br />" + dt.Rows[i]["time"].ToString() + "<br />";
schedulesDateCount[date] = schedulesDateCount[date] + 1;
}
}
return schedule;