public override Task <object> ReadFromStreamAsync(Type type, Stream readStream, HttpContent content, IFormatterLogger formatterLogger)
        {
            //string typeNameUpper = type.GetTypeInfo().Name.ToUpper();
            //string baseTypeNameUpper = type.GetTypeInfo().BaseType != null ? type.GetTypeInfo().BaseType.Name.ToUpper() : "";
            if (PublicFunc.MatchType(type, "MODELBASE"))
            {
                var result    = base.ReadFromStreamAsync(type, readStream, content, formatterLogger).Result;
                var baseModel = result as ModelBase ?? new ModelBase();
                var headers   = content.Headers;
                baseModel.User = new UserInfo
                {
                    UserID    = headers.GetValues("UserID").FirstOrDefault(),
                    UserName  = headers.GetValues("UserName").FirstOrDefault(),
                    UserSysNo = int.Parse(headers.GetValues("UserSysNo").FirstOrDefault())
                };

                return(Task.Run <object>(() => baseModel));
            }
            return(base.ReadFromStreamAsync(type, readStream, content, formatterLogger));
        }