public override string ToString() { StringBuilder builder = new StringBuilder(); if (Signum == -1) { builder.Append("-"); } builder.Append("P"); if (Years != 0) { builder.Append(Years.ToString()); builder.Append("Y"); } if (Months != 0) { builder.Append(Months.ToString()); builder.Append("M"); } if (Weeks != 0) { builder.Append(Weeks.ToString()); builder.Append("W"); } if (Days != 0 || (Years == 0 && Months == 0 && Weeks == 0 && Hours == 0 && Minutes == 0 && Seconds == 0 && FractionOfSecond == 0)) { builder.Append(Days.ToString()); builder.Append("D"); } if (!(Hours == 0 && Minutes == 0 && Seconds == 0 && FractionOfSecond == 0)) { builder.Append("T"); if (Hours != 0) { builder.Append(Hours.ToString()); builder.Append("H"); } if (Minutes != 0) { builder.Append(Minutes.ToString()); builder.Append("M"); } if (Seconds != 0 || FractionOfSecond != 0M) { builder.Append(Seconds.ToString()); if (FractionOfSecond != 0) { builder.Append(FractionOfSecond.ToString().Substring(1)); } builder.Append("S"); } } return(builder.ToString()); }
public override String ToString() { StringBuilder sb = new StringBuilder("P"); if (Years != 0) { sb.Append(Years.ToString()); sb.Append("Y"); } if (Months != 0) { sb.Append(Months.ToString()); sb.Append("M"); } if (Weeks != 0) { sb.Append(Weeks.ToString()); sb.Append("W"); } if (Days != 0) { sb.Append(Days.ToString()); sb.Append("D"); } if (Hours != 0 || Minutes != 0 || Seconds != 0 || Millis != 0) { sb.Append("T"); } if (Hours != 0) { sb.Append(Hours.ToString()); sb.Append("H"); } if (Minutes != 0) { sb.Append(Minutes.ToString()); sb.Append("M"); } if (Seconds != 0 || Millis != 0) { sb.Append(Seconds.ToString()); if (Millis != 0) { sb.Append("."); sb.Append(Millis.ToString("000")); } sb.Append("S"); } return(sb.ToString()); }