zoukankan      html  css  js  c++  java
  • WCF wince的应用

    目前.NET CF3.5预定义的仅支持BasicHttpBinding和WindowsMobileMailBinding两种方式:

    1)      BasicHttpBinding,从本质上来讲,基本和原来调用Web Service的方式一样,因为它支持在http下进行传统的C/S互操作,客户端只需发出一个服务请求并等待回应。

    2)      WindowsMobileMailBinding,这是一个Compact WCF中全新的通信方式,它使用Email作为消息传输的载体,提供了一个全双工的通讯信道,允许进行非可靠的双向异步通信

    cf3.5不支持net.tcp的应用,故有些相关的TCP协议就必须通过传统的方式进行代码的编写了。

    代理类

    对于cf3.5的webservice的代理类,可以通过添加web服务引用,然后把References.cs这个类提取出来获得

    而对于wcf我们就只能借助使用Power Toys的NetCFSvcUtil.exe工具生成客户端代理类。Power Toys下载地址http://115.com/file/be1mgii1

    安装Power Toys后,可以在cmd下

    C:\Program Files\Microsoft.NET\SDK\CompactFramework\v3.5\bin\netcfsvcutil.exe

     这样我们就可以用

    netcfsvcutil.exe /language:cs  http://127.0.0.1/web.svc来生成代理类

    这样就能生成两个文件CFClientBase.cs和web.cs两个文件

    这2个文件中就包含接口方法的调用.

    此工具不会像桌面 svcutil.exe 工具那样生成 App.config 文件,cf3.5不支持通过配置文件对 WCF 进行配置,因此服务的所有端点信息都需要在代码中。

    客户端可以创建一个静态方法用来返回对于服务器的调用

    public static WebClient GetSvc()     
     {          
                 System.ServiceModel.Channels.Binding bind = WebClient.CreateDefaultBinding();
                 string remoteAddress = WebClient.EndpointAddress.Uri.ToString(); 
                 EndpointAddress endpoint = new EndpointAddress(remoteAddress); 
                 WebClient= new WebClient(bind, endpoint);     
                 return client;      
      }
    //调用GetString方法
    public static  string  GetString() 
    {
        return GetSvc().GetStriing();
    }
  • 相关阅读:
    UIImageView
    正则表达式
    控制器生命周期和 UIView
    Storyboard
    1218.2——property关键字
    1218.1——OC中的常见关键字及一些基本方法
    1217.2——定义一个类+方法声明调用
    1217.1——OC准备
    1216.2——文件操作
    1216.1——双链表
  • 原文地址:https://www.cnblogs.com/fujinliang/p/2570896.html
Copyright © 2011-2022 走看看