我想用不同的精度来表示日期。理想情况下,我可以使用DateTime数据类型来存储日期信息,尽管它没有提供精确设置。例如,我的日期是"1/1/2015",但取决于它的精度,它将被理解为:
UI格式和业务逻辑都需要精确性,因此我不喜欢使用.NET随DateTimeFormatInfo或其他格式设置选项--它们有不同的用途。
因此,我自己的解决方案本质上是一个枚举.
public enum DateTimePrecision
{
DayMonthYear = 0,
MonthYear,
Year,
...
}..。与日期(结构或类)相符.
public class MySuperDupaAwesomeDateTime
{
public DateTime Date { get; set; }
public DateTimePrecision Precision { get; set; }
}当然,我也可以构建自己的自定义DateTime。
不管怎么说,这就像是重新发明了一些让人觉得很普通的东西,而且肯定已经存在了。有人能想到改进上述方法或了解.NET框架的特性吗?我不是在寻找一个库或任何东西,而是一个直接从.NET中出来的解决方案。
发布于 2015-05-13 03:42:34
DateTime为Month和Year提供了一些整数标识符。使用它们并将其格式化为String。
如果您需要的不仅仅是一天,DateTime还为Seconds、Minutes、Hours、Milliseconds提供了其他标识符。检查你自己的属性!
在获得它们的整数值之后,您甚至可以开始计算要完成的事情的经过时间(方法是获得一个DateTime,并在启动时为Now设置它,并在它结束时为Now设置它,然后使用name of second object.Subtract( name of the first object )或.Add())!
https://stackoverflow.com/questions/30205195
复制相似问题