WCF服务和客户端操作步骤

wcf可以分为服务端和客户端,在初始化学习需要我们把这两种应用程序都创建在解决方案中;

1.在解决方案中创建新建项目->wcf->wcf服务项目(services);

    在解决方案中创建网站项目->wcf服务项目(分别删除项目文件夹中"AppCode"的文件)-这个项目我称为"client";

2.在client项目中我们添加对"services"项目的dll引用.

   选择client项目中的web.config右键选择"编辑WCF配置",创建服务宿主引用;

    引用添加完成,在找到client程序中的".svc"的文件如:Service.svc,配置成如下所示

    <%@ ServiceClient Language="C#" Debug="true" Service="RoomReservice.RoomService" %> 

   Service:原始的服务类型;

   选择client项目,按f4进入到属性配置,配置虚拟路径为"/";

3.这些步骤操作完了就可以直接在client项目中选择.svc预览了.预览成功就会看到像WebService的引用地址

4.其他项目调用就直接调用client的.svc路径.在其他项目中调用写如下代码     

            //绑定模式为基本http模式
            Binding binding = new BasicHttpBinding();
            //终结点地址
            EndpointAddress endPoint = new EndpointAddress("http://localhost:2499/Service.svc");
            //设置终结点,包括模式和地址
            RoomServiceClient client = new RoomServiceClient(binding, endPoint);
            var msg = client.GetReserveRoom();
            Console.WriteLine(msg);

直接对服务(services)添加引用,不使用client项目过度.

 //绑定模式为基本WS模式

var client = new WSHttpBinding();
        var address = new EndpointAddress("http://localhost:2499/RoomService.svc");
        var factory = new ChannelFactory<IRoomService>(client, address);
        IRoomService chanel = factory.CreateChannel();
  

var msg = client.GetReserveRoom();
        Console.WriteLine(msg);

5.如遇到部署到IIS不能访问,则需要具体原因具体分析.我遇到的错误是:"加载类型“System.ServiceModel.Activation.HttpModule”。错误 "

  解决方法:如上错误,使用命令:c:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -iru


以上都是参考其他网站提供的资料,然后在进行个人总结适用于本人理解,如有相同之处还望见谅~~~~


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值