У меня есть веб-сервис, который позволяет клиенту получать запросы из базы данных и запускать их на клиентском компьютере, отправляя результаты обратно в веб-сервис.Эти результаты анализируются из Datatable в xml и затем отправляются с использованием WebClient.UploadValues.Я могу отправлять и получать запросы / результаты, если они невелики (возвращает только несколько тысяч строк), но когда запрос возвращает сотни тысяч результатов, строка xml становится довольно большой (в частности, с которой я сейчас работаю)70mb), и веб-служба возвращает 404. Not Found.
Я уже увеличил maxAllowedContentLength, maxRequestLength и executeTimeout в web.config для веб-службы.Просто кажется, что клиент даже не пытается отправить данные в веб-сервис до того, как он получит эту ошибку.Есть ли способ сказать, в чем истинная проблема (ограничение строковой переменной xml?)?Код для отправки данных в веб-сервис ниже:
Using wc As New WebClient()
Try
Dim nvc As New NameValueCollection
nvc.Add("params", myParameters)
wc.UploadValues(URI, nvc)
Catch ex As WebException
eLog.WriteEntry("Application", My.Application.Info.AssemblyName + " - " + ex.Message)
End Try
End Using
Я также попробовал этот метод:
Try
Dim client As New HttpClient()
client.Timeout = TimeSpan.FromSeconds(300)
Dim request As New HttpRequestMessage(HttpMethod.Post, URI)
request.Content = New StringContent(myParameters)
Dim response = client.SendAsync(request, HttpCompletionOption.ResponseContentRead)
Catch ex As HttpRequestException
eLog.WriteEntry("Application", My.Application.Info.AssemblyName + " - " + ex.Message)
End Try