/// <summary> /// Builds the URI. /// </summary> /// <param name="hostName">Name of the host.</param> /// <returns></returns> public virtual Uri BuildUri(string hostName) { if (hostName == null) { throw new ArgumentNullException("hostName"); } if (!Validate()) { throw new InvalidOperationException("You cannot build a web service URI with an invalid data query"); } try { var uriSuffix = string.Format("{0}/-/item/v{1}/-/actions/{2}?", hostName.TrimEnd('/'), ApiVersion, ActionName); var uri = string.Format("{0}{1}", uriSuffix, QueryStringParameters.ToQueryString()); return(new Uri(uri)); } catch (Exception ex) { LogFactory.Error("Could not build a URI for the data query", ex); } return(null); }
public System.Uri BuildUri(string hostName) { if (!Validate()) { throw new InvalidOperationException("You cannot build a web service URI with an invalid data query"); } try { var uriSuffix = string.Format("{0}/-/item/v{1}/?", hostName.TrimEnd('/'), ApiVersion); var uri = string.Format("{0}{1}", uriSuffix, QueryStringParameters.ToQueryString()); return(new Uri(uri)); } catch (Exception ex) { Log.WriteError("Could not build a URI for the data query", ex); } return(null); }
public HttpRequestMessage Build() { var uri = BaseUrl.Append(UrlSegments); var getParams = QueryStringParameters.ToQueryString(); if (!string.IsNullOrEmpty(getParams)) { uri = uri.Append($"?{getParams}"); } var req = new HttpRequestMessage(Method, uri); foreach ((var header, var value) in Headers) { req.Headers.Add(header, value); } var jsonBody = Body == null ? null : JsonSerializer.Serialize(Body, Degiro.JsonSerializerOptions); if (!string.IsNullOrEmpty(jsonBody) && !jsonBody.Equals("{}", StringComparison.OrdinalIgnoreCase)) { req.Content = new StringContent(jsonBody, Encoding.UTF8, "application/json"); } return(req); }