系统常数为一周内的天数(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方法。 方法清单

GregorianCalendarAddWeeks(1) ,它将在7天内添加日期。