iPhone中调用WCF服务是本文要介绍的内容,由于对移动平台充满着好奇与兴趣,最近着手了iPhone开发和学习。学习的路线是从objective-c到cococa。方法是看了两本入门的英文书,还有就是学习apple的sdk。对于产品的基本想法是服务端用.net,手机客户端用iPhone。
一些复杂的逻辑处理放到服务端实现,客户端与服务端通过XML交互,在iPhone客户端解析XML通过cocoa展示数据。由于iPhone和DoNet是两个完全不同的平台。iPhone依靠mac系统平台,donet依赖windows系统平台。这篇文章我将通过一个helloworld程序讲述一下通过WCF实现从mac系统到windows的跨平台的调用。
1、创建简单的WCF服务
服务契约代码如下
2、在iPhone中调用WCF
与donet调用wcf服务不同,这里使用NSURLConnection去获取WCF服务端的数据,代码如下:(单击可放大)
Nsstring *soapMessage=[NsstringstringWithFormat:
NSMutableURLRequest*theRequest=[NSMutableURLRequestrequestWithURL:url];
Nsstring *msgLength=[NsstringstringWithFormat:@"%d",[soapMessage length]];
[theRequest addValue:@"text/xml;charset=utf-8"forhttpheaderFIEld:@"Content-Type"];
[theRequestaddValue:@"http://tempuri.org/ISerVice1/GetData"forhttpheaderFIEld:@"SOAPAction"];
[theRequest addValue:msgLengthforhttpheaderFIEld:@"Content-Length"];
[theRequestsethttpMethod:@"POST"];
[theRequest sethttpBody:[soapMessagedataUsingEnCoding:NSUTF8StringEnCoding]];
NSURLConnection*theConnection=[[NSURLConnection alloc]initWithRequest:urldelegate:self];
if (theConnection) {
webData=[[NSMutableDataalloc]retain];
}
else {
NSLog(@"the Connection isnil");
NSURLConnection的委托方法:
return; } - (voID)connectionDIDFinishLoadi
以上是内存溢出为你收集整理的详解跨平台iPhone中调用WCF服务(soap通信)全部内容,希望文章能够帮你解决详解跨平台iPhone中调用WCF服务(soap通信)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)