将图像从iPhone上传到WCF服务

时间:2011-05-15 22:08:08

标签: c# iphone objective-c wcf

我正在尝试构建一个iPhone应用程序和c#WCF服务,以将图像上传到SQL服务数据库。

我的应用程序将图像分解为NSData并使用以下代码发布到WCF服务:

NSData *imageData = UIImageJPEGRepresentation(self.image, 90);

NSURL *url = [NSURL URLWithString:@"http://example.com/ImageDiaryService.svc/json/AddMediaItem"];
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];
[request setPostValue:@"Test" forKey:@"Name"];
[request setPostValue:@"Test description." forKey:@"Description"];
[request setPostValue:@"JPEG" forKey:@"ImageType"];
[request setPostValue:@"iPhone" forKey:@"MediaType"];

[request setData:imageData withFileName:@"myphoto.jpg" andContentType:@"image/jpeg" forKey:@"ImageData"];

[request setDidFinishSelector:@selector(uploadFinished:)];
[request setDidFailSelector:@selector(uploadFailed:)];
[request setDelegate:self];
[request startAsynchronous];

我遇到的问题是Web服务。我不确定应该从app POST接收什么类型的数据。我试过把它作为一个字节数组接收,但是没有用。

我的WCF服务是一项REST服务。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:5)

尝试将其作为Stream接收。 http://blogs.msdn.com/b/carlosfigueira/archive/2008/04/17/wcf-raw-programming-model-receiving-arbitrary-data.aspx上的博客文章展示了如何在WCF REST服务中接收任意数据。