Размещение изображения из Android в WCF Rest Service - PullRequest
0 голосов
/ 04 апреля 2011

Привет, я использую следующий код: http://vikaskanani.wordpress.com/2011/01/11/android-upload-image-or-file-using-http-post-multi-part/

Чтобы отправить изображение в службу WCF Rest.Я не знаю, как настроить службу отдыха WCF, вы можете помочь?Мой текущий интерфейс выглядит так:

[OperationContract]
[WebInvoke(BodyStyle = WebMessageBodyStyle.Bare,
           UriTemplate = "SaveImage",
           Method = "POST")]
void SaveImage();

Что не работает ... может содержать несколько ошибок?

Ответы [ 2 ]

1 голос
/ 18 декабря 2011

Это неправильно.Вы должны послать аргумент Stream в качестве параметра для метода SaveImage, и лучше установить TransferMode = "StreamRequest" в вашем сервисе web.config.

При отправке изображения POSTing используйте тип содержимого двоичного / октетного потока и двоичные данныеТело сообщения.На стороне сервера - читать его из потока.

0 голосов
/ 11 февраля 2013

 using System.ServiceModel;
    using System.ServiceModel.Web;
    using System.IO;
    namespace RESTImageUpload { [ServiceContract] public interface IImageUpload { [OperationContract] [WebInvoke(Method = "POST", UriTemplate = "FileUpload/{fileName}")] void FileUpload(string fileName, Stream fileStream); } }

using System.IO; 
namespace RESTImageUpload
{

public class ImageUploadService : IImageUpload
{

   public void FileUpload(string fileName, Stream fileStream)
    {

        FileStream fileToupload = new FileStream("D:\\FileUpload\\" + fileName, FileMode.Create);

        byte[] bytearray = new byte[10000];
        int bytesRead, totalBytesRead = 0;
        do
        {
            bytesRead = fileStream.Read(bytearray, 0, bytearray.Length);
            totalBytesRead += bytesRead;
        } while (bytesRead > 0);

        fileToupload.Write(bytearray, 0, bytearray.Length);
        fileToupload.Close();
        fileToupload.Dispose();

    }      

}
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...