restclient net xamarin xamarin.forms restsharp

xamarin - net - restsharp web api c#



Xamarin[RestSharp]+[Xam.Plugin.Media] carga el modelo que contiene la imagen (1)

Intento subir imágenes de xamarin.forms y usar restsharp para api serviece.

RestRequest uploadPostRestRequest = new RestRequest("post/create/", Method.POST); uploadPostRestRequest.AddJsonBody(uploadPostRequest);

y este es mi modelo UploadPostRequest

public class UploadPostRequest { public string content; public byte[] image; }

la pregunta es ¿es correcto establecer el tipo de imagen como byte[] ? Sería el servidor aceptar esto? o lo restsharp lo gestionaría?

si RestSharp tiene un buen control con esto, ¿puedo simplemente poner MediaFile de Xam.Plugin.Media para que pueda subirlo de nuevo? Xam.Plugin.Media se utiliza para seleccionar imágenes desde un dispositivo móvil.

demasiadas opciones, entonces, por eso estoy ofreciendo buenos consejos.

si alguien enfrentó la misma experiencia antes, por favor ayuda.

Para obtener información adicional, no puedo usar System.IO.File, Xamarin.Forms no me deja usarlo.


Cuando Xam.Plugin.Media termina de cargar los medios desde la Cámara o desde la Biblioteca, devuelve un MediaFile. Este objeto puede convertirse en una matriz de bytes con algo como esto:

byte[] byteArray; using (var memoryStream = new MemoryStream ()) { mediaFile.GetStream ().CopyTo (memoryStream); mediaFile.Dispose (); byteArray = memoryStream.ToArray (); }

Ahora que tienes la matriz de bytes, solo tienes que pasarla al método que cargará la imagen en tu back-end.