我有这个枚举:
public enum TimePeriod
{
Day = DateTime.Now.AddDays(-1),
Week = DateTime.Now.AddDays(-7),
Month = DateTime.Now.AddMonths(-1),
AllTime = DateTime.Now
}
Run Code Online (Sandbox Code Playgroud)
但是不能这样做
(DateTime)timePeriod
Run Code Online (Sandbox Code Playgroud)
如何获得枚举日期?
在C#,默认的基本类型为enum是int,不幸的是仅支持基本的数据类型,例如int,short,uint等.因此,在.NET中无法存储DateTimes内部enum.
你当然可以使用静态属性创建一个静态类,它可以显示DateTimes你需要的东西而不是enum像这样:
public static class TimePeriod
{
public static DateTime Day{ get{return DateTime.Now.AddDays(-1);}},
public static DateTime Week{ get{return DateTime.Now.AddDays(-7);}},
public static DateTime Month{ get{return DateTime.Now.AddMonths(-1);}},
public static DateTime AllTime{ get{return DateTime.Now;}},
}
Run Code Online (Sandbox Code Playgroud)
并像这样使用它:
myDateTime = TimePeriod.Month;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3253 次 |
| 最近记录: |