我尝试从xamarin.forms上传图片并使用restsharp进行api服务。
RestRequest uploadPostRestRequest = new RestRequest("post/create/", Method.POST);
uploadPostRestRequest.AddJsonBody(uploadPostRequest);
这是我的模型UploadPostRequest
public class UploadPostRequest
{
public string content;
public byte[] image;
}
问题 - 将图像类型设置为byte[]
是否正确?
服务器是接受这个还是restsharp管理它?
如果RestSharp对此有一个很好的控制,我可以从MediaFile
放Xam.Plugin.Media
,这样我就可以上传它了吗?
Xam.Plugin.Media
用于从移动设备中挑选图片。
选择太多,所以,这就是我寻找好建议的原因。
以前是否有人遇到过同样的问题?请帮忙。
有关其他信息,我无法使用System.IO.File,Xamarin.Forms不会让我使用它。
答案 0 :(得分:1)
当Xam.Plugin.Media完成从相机或库中加载媒体时,它返回MediaFile。这个对象可以转换为字节数组,如下所示:
byte[] byteArray;
using (var memoryStream = new MemoryStream ())
{
mediaFile.GetStream ().CopyTo (memoryStream);
mediaFile.Dispose ();
byteArray = memoryStream.ToArray ();
}
现在您需要将字节数组传递给将上传图像到后端的方法。