Exemplo n.º 1
0
        /// <summary>
        ///     Converts the date/time value to a local time
        ///     within the specified time zone.
        /// </summary>
        /// <param name="tzo"></param>
        /// <returns></returns>
        public IDateTime ToTimeZone(TimeZoneObservance tzo)
        {
            ITimeZoneInfo tzi = tzo.TimeZoneInfo;

            if (tzi != null)
            {
                return(new iCalDateTime(tzi.OffsetTo.ToLocal(Utc), tzo));
            }
            return(null);
        }
Exemplo n.º 2
0
        /// <summary>
        ///     Initializes the specified value.
        /// </summary>
        /// <param name="value">The value.</param>
        /// <param name="tzo">The time zone observance.</param>
        private void Initialize(DateTime value, TimeZoneObservance tzo)
        {
            if (value.Kind == DateTimeKind.Utc)
            {
                IsUniversalTime = true;
            }

            // Convert all incoming values to UTC.
            Value   = DateTime.SpecifyKind(value, DateTimeKind.Utc);
            HasDate = true;
            HasTime = (value.Second != 0 || value.Minute != 0 || value.Hour != 0);
            if (tzo.TimeZoneInfo != null)
            {
                TzId = tzo.TimeZoneInfo.TzId;
            }
            TimeZoneObservance = tzo;
            AssociatedObject   = tzo.TimeZoneInfo;
        }
Exemplo n.º 3
0
 /// <summary>
 ///     Initializes a new instance of the <see cref="iCalDateTime" /> class.
 /// </summary>
 /// <param name="value">The value.</param>
 /// <param name="tzo">The time zone observance.</param>
 public iCalDateTime(DateTime value, TimeZoneObservance tzo)
 {
     Initialize(value, tzo);
 }