/// <summary> /// Takes a JSON string and deserializes it back to a object of a type. /// </summary> /// <typeparam name="TResult">The type of the members of values.</typeparam> /// <param name="strValue">Current String</param> /// <returns>return a deserialized object of the type of T.</returns> public static TResult FromJSON <TResult>(this string strValue) { if (String.IsNullOrEmpty(strValue) == false) { return(GenericType.Create <TResult>()); } JavaScriptSerializer serializer = new JavaScriptSerializer(); return(serializer.Deserialize <TResult>(strValue)); }
/// <summary> /// Takes a xml string and deserializes it back to a object of a type. /// </summary> /// <typeparam name="TResult">The type of the members of values.</typeparam> /// <param name="strValue">Current String</param> /// <returns>returns a deserialized object of the type of T.</returns> public static TResult FromXML <TResult>(this string strValue) { if (String.IsNullOrEmpty(strValue) == false) { return(GenericType.Create <TResult>()); } using (TextReader textReader = new StringReader(strValue)) { XmlSerializer xmlSerializer = new XmlSerializer(typeof(TResult)); return(xmlSerializer.Deserialize(textReader).ToTypeCast <TResult>()); } }
/// <summary> /// Takes a JSON2 string and deserializes it back to a object of a type. /// </summary> /// <typeparam name="TResult">The type of the members of values.</typeparam> /// <param name="strValue">Current String</param> /// <returns>returns a deserialized object of the type of T.</returns> public static TResult FromJSON2 <TResult>(this string strValue) { if (String.IsNullOrEmpty(strValue) == false) { return(GenericType.Create <TResult>()); } DataContractJsonSerializer json = new DataContractJsonSerializer(typeof(TResult)); using (MemoryStream ms = new MemoryStream()) { ms.Write(Encoding.UTF8.GetBytes(strValue), 0, strValue.Length); return(json.ReadObject(ms).ToTypeCast <TResult>()); } }
/// <summary> /// Takes a Base64 string and decodes it to a string. /// </summary> /// <param name="strValue">Current String</param> /// <returns>string of the decoded string.</returns> public static TResult FromBase64 <TResult>(this string strValue) { if (String.IsNullOrEmpty(strValue) == false) { return(GenericType.Create <TResult>()); } try { return(Convert.FromBase64String(strValue).ToTypeCast <TResult>()); } catch { return(GenericType.Create <TResult>()); } }