Объект передается как ноль в контроллер веб-API - PullRequest
0 голосов
/ 31 октября 2019

У меня есть сложный объект, который включает в себя файлы, строки и т. Д. И я хочу передать его своему контроллеру Web API, но API всегда получает его как ноль.

Я пытался преобразоватьв JSON, возиться с заголовками запросов и некоторыми другими вещами, но, похоже, ничего не работает.

/////////// Controller

using (HttpClient client = new HttpClient())
{
     client.BaseAddress = new Uri(Settings.DataApiUrl);
     HttpResponseMessage uploadResponse = client.PostAsJsonAsync("FileUpload/Upload", settings).Result;
     var content = uploadResponse.Content.ReadAsStringAsync().Result;
     response = JsonConvert.DeserializeObject<FileUploadResponse>(content);
}

///////// API

[HttpPost]
[ActionName("Upload")]
public FileUploadResponse UploadFile(FileUploadSettings settings)
{
    try
    {
       FileUploadMgr mgr = new FileUploadMgr(settings);
       return mgr.Upload();
    }
    catch(Exception e)
    {
       FileUploadResponse response = new FileUploadResponse();
       response.Add(new Response(null, false, e));
       return response;
    }
}

Как только он попадает в API, объект 'settings' всегда имеет значение null. Не уверен, что делать, чтобы это исправить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...