Использование бессонницы для создания кода с помощью RestSharp:
var client = new RestClient("https://localhost:44372/api/Box/Upload");
var request = new RestRequest(Method.POST);
request.AddHeader("content-type", "multipart/form-data; boundary=---011000010111000001101001");
request.AddParameter("multipart/form-data; boundary=---011000010111000001101001", "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"LiterallyAnything\"\r\n\r\n", ParameterType.RequestBody);
request.AddFile("MyFileName", "MyFileAndPath");
IRestResponse response = client.Execute(request);
Это просто соответствует конечной точке. net Core 2.1:
[HttpPost("Upload")]
[ProducesResponseType(typeof(ActionResult), 201)]
[ProducesResponseType(typeof(ActionResult), 400)]
[ProducesResponseType(typeof(ActionResult), 500)]
public async Task<IActionResult> Upload() {
ActionResult retVal = StatusCode(500);
try {
if (Request.Form.Files.Count() != 1) { //<----Throws exception here
Я получаю следующую ошибку:
Unexpected end of Stream, the content may have already been read by another component.
Я проверил, есть ли какая-то блокировка файла (нет). Файл абсолютно существует. Похоже, он не очень хорошо справляется с этим при запуске из модульного теста.
Что дает?