c# – 使用月历来获取所选周的星期六日期值
发布时间:2020-12-15 18:27:29 所属栏目:百科 来源:网络整理
导读:我有点担心这个问题. 当我选择特定日期时,如何获得月历日历值. 例如:我在月历上选择了2月14日.选择它后会有一个提示,其中包含星期六“2011年2月19日”或我选择的2月24日,提示将显示“2011年2月26日”. 解决方法 // This function will return the next satu
我有点担心这个问题.
当我选择特定日期时,如何获得月历日历值. 例如:我在月历上选择了2月14日.选择它后会有一个提示,其中包含星期六“2011年2月19日”或我选择的2月24日,提示将显示“2011年2月26日”. 解决方法// This function will return the next saturday for a datetime DateTime NextSaturday(DateTime now) { while (now.DayOfWeek != DayOfWeek.Saturday) now = now.AddDays(1); return now; } UPDATE 差不多2年后,我想改变这个答案. 这些天我永远不会为一个类创建一个“实用功能”.我现在总是“延伸”课程.签名现在应该是DateTime.Next(DayOfWeek).有关扩展的更多详细信息,请参见http://msdn.microsoft.com/en-us/library/vstudio/bb383977.aspx. 逻辑也错了.如果现在是星期六,那么它将始终返回当前日期.我想大多数来电者都希望现在7天回来.所以第一个变化是: DateTime NextSaturday(DateTime now) { do { now = now.AddDays(1); } while (now.DayOfWeek != DayOfWeek.Saturday) return now; } 然后将功能更改为与一周中的任何一天一起使用: DateTime Next(DateTime now,DayOfWeek nextDay) { do { now = now.AddDays(1); } while (now.DayOfWeek != nextDay) return now; } 现在“扩展”DateTime类以支持Next(DayOfWeek) namespace DateTime.Extensions { public static class DateTimeExtensions { public static DateTime Next(this DateTime now,DayOfWeek nextDay) { do { now = now.AddDays(1); } while (now.DayOfWeek != nextDay) return now; } } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |