将basicHttpBinding添加到BizTalk ESB工具包WCF服务/ESB.InventureServices.WCF/ProcessInventurey.svc

将basicHttpBinding添加到BizTalk ESB工具包WCF服务/ESB.InventureServices.WCF/ProcessInventurey.svc,wcf,biztalk,toolkit,esb,basichttpbinding,Wcf,Biztalk,Toolkit,Esb,Basichttpbinding,刚刚开始使用BizTalk Server 2009上的ESB Toolkit 2.0。我可以让一个.NET客户端与ESB工具包WCF Service/ESB.inventaryservices.WCF/processinventary.svc进行对话,一点问题都没有。但是,我们使用的客户端技术根本无法处理WSHttpBinding,它只能看到basicHttpBinding 有人知道如何将basicHttpBinding添加到此服务的web.config吗?web.config如下所示 非常感谢

刚刚开始使用BizTalk Server 2009上的ESB Toolkit 2.0。我可以让一个.NET客户端与ESB工具包WCF Service/ESB.inventaryservices.WCF/processinventary.svc进行对话,一点问题都没有。但是,我们使用的客户端技术根本无法处理WSHttpBinding,它只能看到basicHttpBinding

有人知道如何将basicHttpBinding添加到此服务的web.config吗?web.config如下所示

非常感谢您提供的任何帮助

安德鲁

<?xml version="1.0"?>
<!-- 
    Note: As an alternative to hand editing this file you can use the 
    web admin tool to configure settings for your application. Use
    the Website->Asp.Net Configuration option in Visual Studio.
    A full list of settings and comments can be found in 
    machine.config.comments usually located in 
    \Windows\Microsoft.Net\Framework\v2.x\Config 
-->
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
 <!--
    The <configSections> section declares handlers for custom configuration sections.
  -->
 <configSections>
  <section name="bizTalkSettings" type="Microsoft.BizTalk.Adapter.Wcf.Runtime.BizTalkConfigurationSection, Microsoft.BizTalk.Adapter.Wcf.Runtime, Version=3.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
  <sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
   <sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
    <section name="scriptResourceHandler" type="System.Web.Configuration.ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
    <sectionGroup name="webServices" type="System.Web.Configuration.ScriptingWebServicesSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
     <section name="jsonSerialization" type="System.Web.Configuration.ScriptingJsonSerializationSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="Everywhere"/>
     <section name="profileService" type="System.Web.Configuration.ScriptingProfileServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
     <section name="authenticationService" type="System.Web.Configuration.ScriptingAuthenticationServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
     <section name="roleService" type="System.Web.Configuration.ScriptingRoleServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/></sectionGroup></sectionGroup></sectionGroup></configSections>
 <!--
    The <bizTalkSettings> section specifies BizTalk specific configuration.
  -->
 <bizTalkSettings>
  <!--
      mexServiceHostFactory debug:
      Set to "true" to launch debugger when MexServiceHostFactory.CreateServiceHost(...) is called by IIS.
      Used to debug from initial point of activation by IIS.
      Default value is "false" for normal operation.
    -->
  <mexServiceHostFactory debug="false">
   <receiveLocationMappings>
    <!--add markupFileName="*.svc" receiveLocationName="?" publicBaseAddress="protocol://host[:port]" /-->
   </receiveLocationMappings>
  </mexServiceHostFactory>
  <!--
      webServiceHostFactory debug:
      Set to "true" to launch debugger when WebServiceHostFactory.CreateServiceHost(...) is called by IIS.
      Used to debug from initial point of activation by IIS.
      Default value is "false" for normal operation.
    -->
  <webServiceHostFactory debug="false"/>
  <!--
      isolatedReceiver disable:
      Set to "true" to skip IBTTransportProxy.RegisterIsolatedReceiver(...) and IBTTransportProxy.TerminateIsolatedReceiver(...) calls.
      Used for testing metadata exchange without having to setup receive location.
      Default value is "false" for normal operation.
    -->
  <isolatedReceiver disable="false"/>
  <!--
      btsWsdlExporter disable:
      Set to "true" to skip adding BtsWsdlExporter behavior extension to service endpoint.
      Used for testing or comparing strongly-typed WSDL customization versus weakly-typed WSDL of generic WCF service.
      Default value is "false" for normal operation.
    -->
  <btsWsdlExporter disable="false"/>
 </bizTalkSettings>
 <appSettings/>
 <connectionStrings/>
 <system.web>
  <!-- 
      Set compilation debug="true" to insert debugging symbols into the compiled page.
      Because this affects performance, set this value to true only during development.
    -->
  <compilation defaultLanguage="c#" debug="false">
   <assemblies>
    <add assembly="mscorlib, version=2.0.0.0, culture=neutral, publickeytoken=b77a5c561934e089"/>
    <add assembly="Microsoft.BizTalk.Adapter.Wcf.Common, Version=3.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
    <add assembly="Microsoft.BizTalk.Adapter.Wcf.Runtime, Version=3.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
    <add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
    <add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    <add assembly="System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
    <add assembly="System.Data.DataSetExtensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/></assemblies>
  </compilation>
  <!--
      The <authentication> section enables configuration of the security authentication mode
      used by ASP.NET to identify an incoming user.
    -->
  <authentication mode="None"/>   <!--  <authentication mode="Windows"/> -->
  <!--
      The <customErrors> section enables configuration of what to do if/when an unhandled error
      occurs during the execution of a request. Specifically, it enables developers to configure
      html error pages to be displayed in place of a error stack trace.
    -->
  <!--
    <customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
      <error statusCode="403" redirect="NoAccess.htm" />
      <error statusCode="404" redirect="FileNotFound.htm" />
    </customErrors>
    -->
  <customErrors mode="RemoteOnly"/>
  <trust level="Full" originUrl=""/>
  <pages>
   <controls>
    <add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    <add tagPrefix="asp" namespace="System.Web.UI.WebControls" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/></controls></pages>
  <httpHandlers>
   <remove verb="*" path="*.asmx"/>
   <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
   <add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
   <add verb="GET,HEAD" path="ScriptResource.axd" validate="false" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/></httpHandlers>
  <httpModules>
   <add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/></httpModules></system.web>
 <!--
    The <system.serviceModel> section specifies Windows Communication Foundation (WCF) configuration.
  -->
 <system.serviceModel>
  <bindings/>
  <behaviors>
   <serviceBehaviors>
    <behavior name="ServiceBehaviorConfiguration">
     <serviceDebug httpHelpPageEnabled="true" httpsHelpPageEnabled="false" includeExceptionDetailInFaults="true"/>
     <serviceMetadata httpGetEnabled="true" httpsGetEnabled="false"/>
     <soapHeaderMetadata enabled="true">
      <soapHeaders>
       <!--add headerTypeName="Itinerary" operation="SubmitRequest" message="Itinerary" operationType="Input" targetNamespace="http://schemas.microsoft.biztalk.practices.esb.com/itinerary" xsdFileName="Itinerary.xsd"/-->
       <add headerTypeName="ItineraryDescription" operation="SubmitRequest" message="ItineraryDescription" operationType="Input" targetNamespace="http://schemas.microsoft.biztalk.practices.esb.com/itinerary" xsdFileName="ItineraryDescription.xsd"/>
      </soapHeaders>
     </soapHeaderMetadata>
<!--
     <serviceCredentials>
      <windowsAuthentication allowAnonymousLogons="true"/>
     </serviceCredentials>
-->
     <serviceAuthorization/>
    </behavior>
   </serviceBehaviors>
  </behaviors>
  <services>
   <service behaviorConfiguration="ServiceBehaviorConfiguration" name="Microsoft.BizTalk.Adapter.Wcf.Runtime.BizTalkServiceInstance">
    <endpoint address="mex" binding="mexHttpBinding" bindingConfiguration="" name="HttpMexEndpoint" contract="IMetadataExchange"/>
      </service>
  </services>
  <extensions>
   <behaviorExtensions>
    <add name="soapHeaderMetadata" type="Microsoft.Practices.ESB.ServiceModel.Helpers.SoapHeaderMetadataExtensionElement, Microsoft.Practices.ESB.ServiceModel.Helpers, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
   </behaviorExtensions>
  </extensions>
 </system.serviceModel>
 <system.codedom>
   <compilers>
    <compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CSharp.CSharpCodeProvider,System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" warningLevel="4">
     <providerOption name="CompilerVersion" value="v3.5"/>
     <providerOption name="WarnAsError" value="false"/></compiler>
    <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" type="Microsoft.VisualBasic.VBCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" warningLevel="4">
     <providerOption name="CompilerVersion" value="v3.5"/>
     <providerOption name="OptionInfer" value="true"/>
     <providerOption name="WarnAsError" value="false"/></compiler></compilers></system.codedom>
 <system.webServer>
   <validation validateIntegratedModeConfiguration="false"/>
  <modules>
   <remove name="ScriptModule"/>
   <add name="ScriptModule" preCondition="managedHandler" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/></modules>
  <handlers>
   <remove name="WebServiceHandlerFactory-Integrated"/>
   <remove name="ScriptHandlerFactory"/>
   <remove name="ScriptHandlerFactoryAppServices"/>
   <remove name="ScriptResource"/>
   <add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
   <add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
   <add name="ScriptResource" verb="GET,HEAD" path="ScriptResource.axd" preCondition="integratedMode" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/></handlers></system.webServer>
 <runtime>
  <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
   <dependentAssembly>
    <assemblyIdentity name="System.Web.Extensions" publicKeyToken="31bf3856ad364e35"/>
    <bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="3.5.0.0"/></dependentAssembly>
   <dependentAssembly>
    <assemblyIdentity name="System.Web.Extensions.Design" publicKeyToken="31bf3856ad364e35"/>
    <bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="3.5.0.0"/></dependentAssembly></assemblyBinding></runtime></configuration>

在绑定标签中,您可以添加:

<basicHttpBinding>
  <binding name="basichttpbindingname">
    <security mode="TransportCredentialOnly">
      <transport clientCredentialType="Windows"/>
    </security>
    <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647"/>
  </binding>
</basicHttpBinding>

您需要使用基本Http绑定创建一个新的入口匝道

您可以使用BizTalk WCF服务发布向导创建入站

从原始服务复制Web.config文件

验证
processinventuresevice.svc
文件的出厂设置是否为

Microsoft.BizTalk.Adapter.Wcf.Runtime.BasicHttpWebServiceHostFactory
现在您可以开始使用basicHttp绑定了

查看此链接:

-1以这种方式添加绑定将不会取得任何效果。这里的问题是,实际服务端点的端点和绑定是在代码中定义的,而不是在配置文件中定义的。