public static SupportTimeStartEndB Make(String key, String datestr, long duration)
        {
            if (datestr == null)
            {
                return(new SupportTimeStartEndB(key, null, null, null, null, null, null));
            }
            // expected : 2002-05-30T09:00:00.000
            long start = DateTimeParser.ParseDefaultMSec(datestr);
            long end   = start + duration;

            return(new SupportTimeStartEndB(
                       key, start,
                       SupportDateTime.ToDate(start),
                       SupportDateTime.ToDateTimeEx(start),
                       end,
                       SupportDateTime.ToDate(end),
                       SupportDateTime.ToDateTimeEx(end)));
        }
        public SupportTimeStartBase(string key, string datestr, long duration)
        {
            Key = key;

            if (datestr != null)
            {
                // expected : 2002-05-30T09:00:00.000
                long start = DateTimeParser.ParseDefaultMSec(datestr);
                long end   = start + duration;

                longdateStart = start;
                utildateStart = SupportDateTime.ToDate(start);
                caldateStart  = SupportDateTime.ToDateTimeEx(start);
                longdateEnd   = end;
                utildateEnd   = SupportDateTime.ToDate(end);
                caldateEnd    = SupportDateTime.ToDateTimeEx(end);
            }
        }