假设DayOfWeek的数值是否安全?
我将星期几存储在数据库中,其中星期日= 1,星期一= 2等。
在来自数据库的查询中,我需要将该日转换为System.DayOfWeek
。
根据MSDN :
此枚举中常量的值范围从DayOfWeek.Sunday到DayOfWeek.Saturday 。 如果强制转换为整数,则其值的范围从零(表示DayOfWeek.Sunday )到六(表示DayOfWeek.Saturday )。
这意味着在我查询数据之后,我需要在将结果转换为DayOfWeek
之前减去1。
这样安全吗?
或者我是否需要担心DayOfWeek
的数值变化?
是的,这个安全,你不应该担心价值观的变化。 以下是枚举的定义方式:
public enum DayOfWeek { Sunday = 0, Monday = 1, Tuesday = 2, Wednesday = 3, Thursday = 4, Friday = 5, Saturday = 6 }
如果这些值在BCL中发生变化,那么很多代码都会破坏。
是的,总是安全的,你可以回头和前面:
return DateTime.Today.AddDays(-1);
和
return DateTime.Today.AddDays(1);