【wcf】——WCF基础

【前言】

   最近在接触soa的时候接触了一下wcf,想想以前接触的Web service主要利用http和soap协议使用商业数据在web上传输。通过web调用web service可以执行从简单的请求道复杂的上午的任何功能。而wcf是支持多种的协议,目前更加主流的一种架构!

【内容】

    wcf的基本概念:以契约(contract)来定义双方沟通的协议,合约必须要以接口的方式来体现,而实际的服务必须要有这些合约接口派生并实现。

合约的组成:

1.数据契约(Data Contract):定制双方沟通的数据格式。

2.服务契约(Service Contract):服务的定义。

3.操作契约(Operation Contract):服务提供的方法。

4.消息契约(Message Contract):通信期间改写信息内容的规范

协议绑定:

  绑定是一个制定好的通道栈,包含了协议通道,传输通道和编码器。从功能上看,一个绑定继承了通信模式,可靠性,安全性,事务传播和互操作性等设置。


绑定的基本设置:

在wcf程序中,有两种方式来设置绑定:1.在代码中绑定;2.在配置文件中绑定(更常用)

举例在配置文件中: 

<?xml version="1.0"?>
<configuration>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5"/></startup>
  <system.serviceModel>
    <services >
      <service name="WinformHello.HelloService" behaviorConfiguration="TestBehavior" >
        <host>
          <!--基本地址-->
          <baseAddresses>
            <add baseAddress="http://localhost:8080/hello"/>
          </baseAddresses>
        </host>
        <!--终结点三要素,其中bing是和address有关的,但是contract是和定义的接口服务有关的-->
        <endpoint address=""   //地址:上面已经定义过了,就不需要再定义了。
         binding="basicHttpBinding" //绑定
         contract="WCFserviceDemo.Ihelloservice"> //契约
        </endpoint>
      </service>
      </services>
    <!--允许访问-->
    <behaviors>
      <serviceBehaviors>
        <behavior name="TestBehavior">
          <serviceMetadata httpGetEnabled="true"/>
        </behavior>
      </serviceBehaviors>
    </behaviors>
    
  </system.serviceModel>


</configuration>
wcf支持:http,tcp,Named Pipe,MSMQ,Peer-To-Peer Tcp等协议

wcf的优势:

特性

WebService

.NetRemoting

Enterprise Services

WSe

MSMQ

WCF

具有互操作性服务

支持

 

 

 

 

支持

.net.net的通信

 

支持

 

 

 

支持

分布式事务

 

 

支持

 

 

支持

支持WS标准

 

 

 

支持

 

支持

消息队列

 

 

 

 

支持

支持

1.统一性。

2.互操作性

3.安全与可信赖

4.兼容性

【总结】

    其实wcf就是SOA架构一种体现,wcf主要通过契约定义了一致的接口,可以让用户统一的访问。当然我们本文主要是讲了一些基础的东西,在社么情况下使用哪一种绑定,还需要我们根据实践的经验去分析!希望本文可以你有帮助!

  感谢您的时间!


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 68
    评论
评论 68
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值