protected override async Task Execute(WorkflowInstance instance) { using (var client = new HttpClient()) { var url = RequestParameters != null && RequestMethod == HttpMethod.Get ? RequestUrl.ToUrl(RequestParameters.ToArray()) : RequestUrl.ToUrl(); var request = new HttpRequestMessage(RequestMethod, url); if (RequestMethod == HttpMethod.Post) { if (JsonData != null) { request.Content = JsonData.AsJsonContent(); } else if (RequestParameters != null) { request.Content = new FormUrlEncodedContent( RequestParameters.ToDictionary( k => k.Key, v => v.Value?.ToString() ?? string.Empty)); } } var response = await client.SendAsync(request); ResponseAction?.Invoke(response); } }