динамическое значение равно нулю из-за объекта задания, заполненного файлами в кодировке base64

#c# #vb.net #json.net #base64 #asp.net-web-api2

#c# #vb.net #json.net #база 64 #asp.net-web-api2

Вопрос:

У меня есть VB.net приложение, которому необходимо вызвать веб-api C# с некоторыми параметрами, включая множество файлов в кодировке base64.

Я обнаружил, что лучший способ передать эти данные приложению-создать объект задания со всеми данными и передать его в WebAPI, чтобы он мог считываться как динамический объект

вот в чем дело vb.net «передний конец»

 Dim jObj As JObject = New JObject From {  {"Field1", "foo"},  {"Field2", "foo"},  {"ListFileFotoBase64", JToken.FromObject(lstFileFotoBase64)}  }   Dim uri As New Uri(Url amp; $"WebApiMethod")  Using client As HttpClient = New HttpClient  client.DefaultRequestHeaders.Authorization = New AuthenticationHeaderValue("Bearer", Token)   Dim content As StringContent = New StringContent(jObj.ToString, Encoding.UTF8, "application/json")   Using response As HttpResponseMessage = client.PostAsync(uri, content).Result  Dim res As String = response.Content.ReadAsStringAsync().Result  Dim httpResponse As HttpResponseCustom = JsonConvert.DeserializeObject(Of HttpResponseCustom)(res)  Return httpResponse  End Using  End Using  

lstFileFotoBase64-это список строк, которые могут содержать до 100 файлов в кодировке base64

и вот как я прочитал в проекте C# WebAPI:

 [Route("WebApiMethod")]  [ResponseType(typeof(HttpResponseCustom))]  [HttpPost]  public IHttpActionResult WebApiMethod(dynamic value)  {   try  {  Listlt;stringgt; ListFileFotoBase64 = ((JArray)value.ListFileFotoBase64).ToObjectlt;Listlt;stringgt;gt;();  

проблема в том, что если я загружу 61 элемент lstFileFotoBase64, весь динамический объект будет равен нулю, но если я удалю lstFileFotoBase64 из объекта задания, он будет работать нормально. Я всегда передаю файл в кодировке base64 в webapi, и у меня не возникает никаких проблем.

Спасибо за совет

Комментарии:

1. «если я загружу 61 элемент lstFileFotoBase64, весь динамический объект будет равен нулю» — работает ли это для других величин?

2. @AndrewMorton похоже, что если я, например, загружу только один элемент, он будет работать