Изображение, отправленное на мой веб-сервис, всегда имеет нулевое значение с использованием структуры Картера - PullRequest
0 голосов
/ 16 октября 2019

У меня возникла небольшая проблема, из-за которой изображение, отправленное им почтальоном, не заполняется в моей модели при использовании метода BindAndValidate .

Вот моя модель:

public class Photo {
     public string date {get; set;}
     public byte[] image {get; set;} 
}

А вот мой фактический вызов:

curl -k -X POST \
 http://localhost:8888/upload \
 -H 'Content-Type: multipart/form-data' \
 -H 'cache-control: no-cache' \
 -H 'content-type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW' \
 -F 'image=@\\LAPTOP\USERDAT01\MATIAS\Desktop\image.jpg' \
 -F date=2019-10-16

Проблема, с которой я сталкиваюсь, заключается в том, что хотя поле date в моей модели фактически заполняется свойством image всегда равно нулю.

Это код моего модуля:

var request = req.BindAndValidate<Photo>();
uploadPhoto(request.data.date, request.data.image)

Что я делаю не так?

1 Ответ

0 голосов
/ 16 октября 2019

Я наконец решил это как:

var request = req.BindAndValidate<Photo>();
using (StreamReader reader = new StreamReader(req.BindFile().Result.OpenReadStream()))
{
      request.Data.image = Encoding.ASCII.GetBytes(reader.ReadToEnd());
 }

Спасибо!

...