62,244
社区成员




private DateTime[,] GetDateTimes(DateTime dt)
{
DateTime[,] result = new DateTime[13, 2];
int daysOfdt = DateTime.DaysInMonth(dt.Year, dt.Month);
int index = 0;
if (dt.Day >= 1 && dt.Day <= 15)
{
result[0, 0] = new DateTime(dt.Year, dt.Month, 1);
result[0, 1] = new DateTime(dt.Year, dt.Month, dt.Day);
index = 1;
}
else if (dt.Day > 15 && dt.Day <= daysOfdt)
{
result[0, 0] = new DateTime(dt.Year, dt.Month, 1);
result[0, 1] = new DateTime(dt.Year, dt.Month, 15);
result[1, 0] = new DateTime(dt.Year, dt.Month, 16);
result[1, 1] = new DateTime(dt.Year, dt.Month, dt.Day);
DateTime dtTemp = dt.AddMonths(-6);
result[12, 0] = new DateTime(dtTemp.Year, dtTemp.Month, 16);
result[12, 1] = new DateTime(dtTemp.Year, dtTemp.Month, dtTemp.Day);
index = 2;
}
int count = 1;
for (int i = index; i < 12; i += 2)
{
DateTime dtTemp = dt.AddMonths(-count);
int daysOfdtTemp = DateTime.DaysInMonth(dtTemp.Year, dtTemp.Month);
if (count != 6)
{
result[i, 0] = new DateTime(dtTemp.Year, dtTemp.Month, 1);
result[i, 1] = new DateTime(dtTemp.Year, dtTemp.Month, 15);
result[i + 1, 0] = new DateTime(dtTemp.Year, dtTemp.Month, 16);
result[i + 1, 1] = new DateTime(dtTemp.Year, dtTemp.Month, daysOfdtTemp);
count++;
}
else if (index == 1)
{
result[11, 0] = new DateTime(dtTemp.Year, dtTemp.Month, dtTemp.Day);
result[11, 1] = new DateTime(dtTemp.Year, dtTemp.Month, 15);
result[12, 0] = new DateTime(dtTemp.Year, dtTemp.Month, 16);
result[12, 1] = new DateTime(dtTemp.Year, dtTemp.Month, daysOfdt);
}
}
return result;
}
private DateTime[,] GetDateTimes(DateTime dt)
{
DateTime[,] result = new DateTime[13, 2];
int daysOfdt = DateTime.DaysInMonth(dt.Year, dt.Month);
int index = 0;
if (dt.Day >= 1 && dt.Day <= 15)
{
result[0, 0] = new DateTime(dt.Year, dt.Month, 1);
result[0, 1] = new DateTime(dt.Year, dt.Month, dt.Day);
index = 1;
}
else if (dt.Day > 15 && dt.Day <= daysOfdt)
{
result[0, 0] = new DateTime(dt.Year, dt.Month, 1);
result[0, 1] = new DateTime(dt.Year, dt.Month, 15);
result[1, 0] = new DateTime(dt.Year, dt.Month, 16);
result[1, 1] = new DateTime(dt.Year, dt.Month, dt.Day);
DateTime dtTemp = dt.AddMonths(-6);
result[12, 0] = new DateTime(dtTemp.Year, dtTemp.Month, 16);
result[12, 1] = new DateTime(dtTemp.Year, dtTemp.Month, dtTemp.Day);
index = 2;
}
int count = 1;
for (int i = index; i < 12; i += 2)
{
DateTime dtTemp = dt.AddMonths(-count);
int daysOfdtTemp = DateTime.DaysInMonth(dtTemp.Year, dtTemp.Month);
if (count != 6 || index == 1)
{
result[i, 0] = new DateTime(dtTemp.Year, dtTemp.Month, 1);
result[i, 1] = new DateTime(dtTemp.Year, dtTemp.Month, 15);
result[i + 1, 0] = new DateTime(dtTemp.Year, dtTemp.Month, 16);
result[i + 1, 1] = new DateTime(dtTemp.Year, dtTemp.Month, daysOfdtTemp);
count++;
}
}
return result;
}
protected void Page_Load(object sender, EventArgs e)
{
DateTime dt = new DateTime(2008, 7, 22);
DateTime[,] dates = GetDateTimes(dt);
for (int i = 0; i < dates.GetLength(0); i++)
{
Response.Write(dates[i, 0].ToString("yyyy-MM-dd") + " " + dates[i, 1].ToString("yyyy-MM-dd") + "<br>");
}
}
int days = DateTime.ParseExact(date, "yyyy-M-d", null).Day;
if(days>=15)
{}
else
{}