private static object GetParameterValue(System.Web.HttpContextBase context, System.Reflection.ParameterInfo pi) { if (pi.Name == "body") return context.GetOrDeserializeRequestStreamJson(pi.ParameterType); if (pi.Name == "context") return context; var queryValue = context.Request[pi.Name]; if (string.IsNullOrEmpty(queryValue)) return null; return Utility.Convert(queryValue, pi.ParameterType); }
private void Save(System.Web.HttpContextBase context) { var requestBody = context.GetOrDeserializeRequestStreamJson<object>(); var user = GetUser(context.User); if (requestBody.ContainsKey("Settings") && requestBody["Settings"] is IDictionary<string, object>) user.Settings = (IDictionary<string, object>)requestBody["Settings"]; repository.Save(user); context.Response.WriteJson(new { User = user }); }