private static TimeOffset CreateOffset(bool positive, int magnitude, string units) { foreach (RelativeTime time in Enum.GetValues(typeof(RelativeTime))) { if ((time != RelativeTime.Now) && (units == TimeOffset.OffsetTypeToString(time))) { return(new TimeOffset { Value = positive ? magnitude : -magnitude, Type = time }); } } throw new ArgumentOutOfRangeException("units", units, "String is not a valid offset time type."); }
public override string ToString() { StringBuilder builder = new StringBuilder(0x100); foreach (TimeOffset offset in this) { if (offset.Value >= 0) { builder.Append("+"); } builder.AppendFormat("{0}", offset.Value); builder.Append(TimeOffset.OffsetTypeToString(offset.Type)); } return(builder.ToString()); }