示例#1
0
 /// <summary>
 /// Converts the <see cref="sourceValue" /> parameter to the <see cref="destinationType" /> parameter using <see cref="formatProvider"
 /// /> and <see cref="ignoreCase" />
 /// </summary>
 /// <param name="sourceValue">the value to convert into an instance of <see cref="TaskStatus" />.</param>
 /// <returns>
 /// an instance of <see cref="TaskStatus" />, or <c>null</c> if there is no suitable conversion.
 /// </returns>
 public static object ConvertFrom(dynamic sourceValue)
 {
     if (null == sourceValue)
     {
         return(null);
     }
     try
     {
         TaskStatus.FromJsonString(typeof(string) == sourceValue.GetType() ? sourceValue : sourceValue.ToJsonString());
     }
     catch
     {
         // Unable to use JSON pattern
     }
     try
     {
         return(new TaskStatus
         {
             ApiVersion = sourceValue.ApiVersion,
             Code = sourceValue.Code,
             Kind = sourceValue.Kind,
             MessageList = sourceValue.MessageList,
             State = sourceValue.State,
         });
     }
     catch
     {
     }
     return(null);
 }