/// <summary> /// Attempts to encode a query param. /// <param name="queryParam">The query parameter to encode.</param> /// <returns>The encoded query parameter in string.</returns> public static string EncodeQueryParamSingleValue(object queryParam) { if (queryParam is DateTime) { return(HttpDateUtils.ToRfc3339Format((DateTime)queryParam)); } if (queryParam is bool) { return(queryParam.ToString().ToLower()); } // Enum values cannot be directly casted to string because their values need to come from EnumMember attribute. if (queryParam.GetType().IsEnum) { return(GetEnumString(queryParam)); } return(Uri.EscapeUriString(queryParam.ToString())); }
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { var val = HttpDateUtils.ToRfc3339Format(((DateTime)value).ToUniversalTime()); serializer.Serialize(writer, val); }
public void ToRfc3339FormatTest() { DateTime dt = DateTime.Now; Assert.Matches(Rfc3339DateTimePattern, HttpDateUtils.ToRfc3339Format(dt)); }