系统常数为一周内的天数(7)
任何人都可以在.NET框架中找到一个常量来定义一周中的天数(7)吗?
DateTime.DaysInAWeek // Something like this???
当然我可以定义自己的,但我宁愿不知道它是否已存在于某处。
更新:
我正在寻找这个,因为我需要允许用户从DropDownList中的列表中选择一周(按日期,而不是周数)。
您可以使用System.Globalization.DateTimeFormatInfo.CurrentInfo.DayNames .Length。
我认为对此进行编码是可以的。 我认为不会很快改变。
编辑:我取决于您想要使用此常量的位置。 在一些日历相关算法中,很明显7是什么意思。 另一方面,有时命名为常量make代码更具可读性。
试试这个:
Enum.GetNames(System.DayOfWeek).Length
如果你查看Calendar.AddWeeks的IL代码,你会发现Microsoft本身在代码中使用了硬编码的7。
转子源也使用硬编码7。
不过,我建议使用const。
我不相信有一个。 TimeSpan定义了每毫秒/秒/分钟/小时/天的刻度数的常数,但在一周的水平上没有任何内容。
我在标准库中运行了一个包含单词’Week’的符号(方法/常量/字段/等)的查询。 没有回来。 仅供参考,我使用ReSharper运行此查询。
你的意思是日历周还是普通周?
显然,日历周可能比七天短。 一年中的最后一个日历周通常较短,并且根据您对日历周的定义,第一周也可能更短。
在这种情况下,我担心你将不得不推出自己的周长函数。 使用DateTime
课程并不是很难,我之前做过,如果你需要更多的帮助,请告诉我。
我不确定你到底想要什么,但你可以试试DateHelper(CODE.MSDN) 。 这是我为了典型的日期需求而整理的图书馆。 您可以使用周方法或List方法。 方法清单
GregorianCalendar
有AddWeeks(1)
,它将在7天内添加日期。