斐伊川日期的最後一個星期日, 有什麼辦法找出日期在ASP.NET中十月最後一個星期日C# 我使用.NET 2.0查找十月在ASP.NET C#
5
A
回答
16
沒有必要運行該一個循環:
private static DateTime GetLastWeekdayOfMonth(DateTime date, DayOfWeek day)
{
DateTime lastDayOfMonth = new DateTime(date.Year, date.Month, 1)
.AddMonths(1).AddDays(-1);
int wantedDay = (int)day;
int lastDay = (int)lastDayOfMonth.DayOfWeek;
return lastDayOfMonth.AddDays(
lastDay >= wantedDay ? wantedDay - lastDay : wantedDay - lastDay - 7);
}
這可以很容易地轉換成一個擴展方法,像這樣:
public static class DateTimeExtensions
{
public static DateTime GetLastWeekdayOfMonth(this DateTime date, DayOfWeek day)
{
DateTime lastDayOfMonth = new DateTime(date.Year, date.Month, 1)
.AddMonths(1).AddDays(-1);
int wantedDay = (int)day;
int lastDay = (int)lastDayOfMonth.DayOfWeek;
return lastDayOfMonth.AddDays(
lastDay >= wantedDay ? wantedDay - lastDay : wantedDay - lastDay - 7);
}
}
...並然後可以使用直接來自任何DateTime對象:
DayOfWeek lastSunday = DateTime.Now.GetLastWeekdayOfMonth(DayOfWeek.Sunday);
更新:修復了一個bug。
0
你可以嘗試這樣的事情
DateTime date = new DateTime(2009, 10, 01);
date = date.AddMonths(1).AddDays(-1);
while (date.DayOfWeek != DayOfWeek.Sunday) date = date.AddDays(-1);
或也嘗試
date = date.AddDays(-(int)date.DayOfWeek);
0
DateTime current = new DateTime(DateTime.Today.Year,
10, DateTime.DaysInMonth(DateTime.Today.Year, 10));
while (current.DayOfWeek != DayOfWeek.Sunday)
{
current = current.AddDays(-1);
}
Console.WriteLine(current.ToLongDateString());
我留下它開放結束,所以你可以很容易地用一個參數換出月份。
-2
對不起
DateTime lastDayOfMonth = new DateTime(date.Year, date.Month, 1)
.AddMonths(1).AddDays(-1);
是錯誤的!
=> DateTime lastDayOfMonth = new DateTime(aYear, aMonth, DateTime.DaysInMonth(aYear, aMonth));
相關問題
- 1. 查找其餘天在C月#
- 2. 三月和十月
- 3. 查找十年
- 4. dd/MM十月 - 十一月 - 十二月,其他月份dd/M - SimpleDateFormat
- 5. 查找年月
- 6. 十六進制值查找與C#
- 7. 在C +/C++中查找十六進制範圍內的十六進制數字
- 8. 二月的第十五沒有找到
- 9. 一月\t二月三月\t \t四月\t月\t六月\t七月\t八月\t九月\t十月\t十一月\t十二月\t總和
- 10. PHP循環遍歷月,在十二月
- 11. 十月安裝
- 12. Google Chart日曆不會在十一月和十二月運行
- 13. 十月CMS後端查看分頁
- 14. SQL查詢來查找月
- 15. ASP.NET/C#十進制到0.00
- 16. 查找asp.net
- 17. 如何查找下個月的第一天,如果當前月份是十二月
- 18. 檢查月份是否在C#中間隔(asp.net)
- 19. ASP.NET查找表
- 20. 查找十進制數
- 21. 在ASP.NET中查找DIV HTML
- 22. 查找月份preg-match
- 23. 查找月度間隔
- 24. 查找控制文本(ASP.NET/C#)
- 25. 查找ASP.NET
- 26. 如何檢查是否在過去十二個月
- 27. 在給定的幾周(幾個月)之後在ASP.NET中查找日期
- 28. 如何在月份中查找年月份的差異php
- 29. 十月部分文件夾
- 30. 十月CMS後端模型