Hi! I've prepared a nant patch that adds support for datetime and timespan literals in expressions.
This is a first step towards improving implicit vs explicit conversions issue. Today, the only way to specify a date literal is to use: convert::to-datetime("MM/DD/YYYY") which is not very elegant. I propose a patch that adds: - datetime literals (enclosed in square brackets) [YYYY-MM-DD] [YYYY-MM-DD HH:MI] [YYYY-MM-DD HH:MI:SS] [YYYY-MM-DD HH:MI:SS.MIL] - timestamp literals (enclosed in square brackets, too) [HH:MI:SS.MIL] [HH:MI:SS] [DD:HH:MI:SS.MIL] [DD:HH:MI:SS] Additionally it changes SafeConvert to manually produce the datetime/timestamp according to the mentioned format. This is used in PropertyDictionary.Expand*() to ensure that all datetime strings are produced in YYYY-MM-DD [HH:MI:SS[.MIL]] format. Now, instead of: convert::to-datetime('01-01-2000') + convert::to-timespan('01:01:01') you can write: [2000-01-01] + [01:01:01] which is definitely more readable and typesafe. What do you think? May I commit it? Jarek
dateliterals.patch
Description: Binary data