我想用不同的精度(准确度)来表示日期。理想情况下,我可以使用DateTime数据类型来存储日期信息,尽管它没有精确设置。例如,我的日期为“2015年1月1日”,但根据其精确度,它将被理解为:
UI格式化和业务逻辑都需要精度,因此我不喜欢使用DateTimeFormatInfo或其他附带的.NET开箱即用格式选项 - 它们有不同的用途。
因此,我自己的解决方案基本上是一个枚举......
public enum DateTimePrecision
{
DayMonthYear = 0,
MonthYear,
Year,
...
}
...与日期(结构或类)一致......
public class MySuperDupaAwesomeDateTime
{
public DateTime Date { get; set; }
public DateTimePrecision Precision { get; set; }
}
或者,我当然可以构建自己的自定义 DateTime 。
无论如何,这就像重新发明一些感觉如此普遍并且必须已经存在的东西。任何人都可以考虑改进上述方法或了解.NET Framework功能吗?我不是在寻找一个库或任何东西,而是一个直接来自.NET的解决方案。
答案 0 :(得分:-2)
DateTime具有一些整数的Month
和Year
标识符。使用它们并将其格式化为String
。
如果您需要的准确度高于一天,DateTime
还有其他Second
,Minute
,Hour
s,Millisecond
s的标识符...检查自己的属性!
获得它们的整数值后,您甚至可以开始计算以获得某些内容的完成时间(通过获取DateTime
并在启动和获取时将其设置为Now
另一个DateTime
并在Now
结束后设置name of second object.Subtract( name of the first object )
,然后使用.Add()
或sender.input.after($openButton);
)!