Click here to Skip to main content
15,881,424 members
Articles / Programming Languages / C#
Alternative
Tip/Trick

Partial DateTime Object Equality

Rate me:
Please Sign up or sign in to vote.
4.50/5 (2 votes)
6 Feb 2011CPOL 3.5K   1  
If you use the logic from your FlagIsSet function, you can remove half of your tests: DatePartFlags equalFlags = DatePartFlags.Ticks; equalFlags |= (now.Year == then.Year) ? DatePartFlags.Year : 0; equalFlags |= (now.Month == then.Month) ? DatePartFlags.Month : 0; ...
If you use the logic from your FlagIsSet function, you can remove half of your tests:

DatePartFlags equalFlags = DatePartFlags.Ticks;
equalFlags |= (now.Year == then.Year) ? DatePartFlags.Year : 0;
equalFlags |= (now.Month == then.Month) ? DatePartFlags.Month : 0;
equalFlags |= (now.Day == then.Day) ? DatePartFlags.Day : 0;
equalFlags |= (now.Hour == then.Hour) ? DatePartFlags.Hour : 0;
equalFlags |= (now.Minute == then.Minute) ? DatePartFlags.Minute : 0;
equalFlags |= (now.Second == then.Second) ? DatePartFlags.Second : 0;
equalFlags |= (now.Millisecond == then.Millisecond) ? DatePartFlags.Millisecond : 0;
isEqual = (flags & equalFlags) == flags;

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Software Developer
Japan Japan
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

Comments and Discussions

 
-- There are no messages in this forum --