WCF配置

时间:2012-02-18 15:02:40

标签: c# asp.net wcf configuration

我正在处理一本处理WCF的REST服务书。我一直在关注这些示例,并重申WCF的配置似乎很难掌握。我在下面有一段代码,配置并打开一个端点。我知道这是一个老派的3.0方式来完成这个RESTful任务,但我想知道如何在应用程序配置中设置它而不是任何想法?也有人知道任何以合理的方式分解代码/配置中的WCF配置的站点吗?我一直在寻找的大多数地方只显示具体的例子。

        CustomBinding b = new CustomBinding();
        TextMessageEncodingBindingElement msgEncoder = new TextMessageEncodingBindingElement();
        msgEncoder.MessageVersion = MessageVersion.None;
        b.Elements.Add(msgEncoder);
        HttpTransportBindingElement http = new HttpTransportBindingElement();
        b.Elements.Add(http);
        ServiceHost sh = new ServiceHost(typeof(SimpleHTTPService));
        ServiceEndpoint se = sh.AddServiceEndpoint(typeof(SimpleHTTPService),
        b,
        "http://localhost:8889/TestHttp");
        sh.Open();

1 个答案:

答案 0 :(得分:1)

如果要在config中定义该端点,它将类似于下面的配置。请注意,这还不足以模拟3.0中的REST编程模型(请记住,这仅设置绑定;在3.5及更高版本上,您只需要设置行为)

<system.serviceModel>
  <bindings>
    <customBinding>
      <binding name="OldStylePox">
        <textMessageEncoding messageVersion="None" />
        <httpTransport />
      </binding>
    </customBinding>
  </bindings>
  <services>
    <service name="USE_THE_FULLY_QUALIFIED_NAME_OF_SimpleHttpService">
      <endpoint address="http://localhost:8889/TestHttp"
                binding="customBinding"
                bindingConfiguration="OldStylePox"
                contract="USE_THE_FULLY_QUALIFIED_NAME_OF_SimpleHttpService" />
    </service>
  </services>
<system.serviceModel>