private async Task <IHttpResponse> CallStoredProc(string resource, string procedureName, string wrapper, params StoredProcParam[] parameters) { IHttpAddress address = baseAddress.WithResource(resource, procedureName); if (!string.IsNullOrEmpty(wrapper)) { address = address.WithParameter("wrapper", wrapper); } IHttpRequest request; if (parameters.Length > 0) { StoredProcRequest storedProc = new StoredProcRequest { @params = parameters.ToList(), wrapper = wrapper }; string body = contentSerializer.Serialize(storedProc); request = new HttpRequest(HttpMethod.Post, address.Build(), baseHeaders, body); } else { request = new HttpRequest(HttpMethod.Get, address.Build(), baseHeaders); } IHttpResponse response = await httpFacade.RequestAsync(request); HttpUtils.ThrowOnBadStatus(response, contentSerializer); return(response); }
private Task <string> CallStoredProc(string resource, string procedureName, string wrapper, params StoredProcParam[] parameters) { SqlQuery query = null; if (!string.IsNullOrEmpty(wrapper)) { query = new SqlQuery { Fields = null, CustomParameters = new Dictionary <string, object> { { "wrapper", wrapper } } }; } IHttpRequest request; if (parameters.Length > 0) { StoredProcRequest storedProc = new StoredProcRequest { Params = parameters.ToList(), Wrapper = wrapper }; string body = base.ContentSerializer.Serialize(storedProc); request = base.BuildRequest(HttpMethod.Post, body, new[] { resource, procedureName }, query); } else { request = base.BuildRequest(HttpMethod.Get, null, new[] { resource, procedureName }, query); } return(ExecuteRequest(request)); }