使用Carter框架发送到我的Web服务的图像始终为空

问题描述 投票:0回答:1

我有一个小问题,当使用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属性始终为null。

这是我的模块代码:

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

我在做什么错?

c# image upload multipart carter
1个回答
0
投票

我终于将其解决为:

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

谢谢!

© www.soinside.com 2019 - 2024. All rights reserved.