Search code examples
enterprise-libraryworkflow-foundation-4

Enterprise library with workflow foundation 4.0-throwing exception in starting service?


I want to use enterprise library validation with wf4.0. Below is my configuration.

<?xml version="1.0" encoding="utf-8" ?>
<configuration> 
  <system.web>
    <compilation debug="true" targetFramework="4.0" />
  </system.web>
  <system.serviceModel>
    <services>
      <service name="Service1" behaviorConfiguration="PublishMetadata">
        <endpoint address=""
        binding="basicHttpBinding" contract="ITestService" behaviorConfiguration="Validation"/>       
      </service>      
      </services>

    <behaviors>
      <endpointBehaviors>
        <behavior name="Validation">
          <validation enabled="true"/>
        </behavior>
      </endpointBehaviors>

      <serviceBehaviors>
        <behavior name="PublishMetadata">
          <serviceMetadata httpGetEnabled="true"/>
        </behavior>
      </serviceBehaviors>
    </behaviors>
    <extensions>
      <behaviorExtensions>
        <add name="validation"
             type="Microsoft.Practices.EnterpriseLibrary.Validation.Integration.WCF.ValidationElement, Microsoft.Practices.EnterpriseLibrary.Validation.Integration.WCF, Version=4.1.0.0, Culture=neutral, PublicKeyToken=null" />
      </behaviorExtensions>
    </extensions>
    <serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
  </system.serviceModel>
  <system.webServer>
    <modules runAllManagedModulesForAllRequests="true"/>
  </system.webServer>
</configuration>

It is throwing exception when i try to browse service in web browser. Exception :-

Server Error in '/' Application.

Value cannot be null. Parameter name: operation.SyncMethod Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.ArgumentNullException: Value cannot be null. Parameter name: operation.SyncMethod


Solution

  • As we know that WF service is a type of WCf async service. Enterprise library does not support async services. One expert suggested some updating in enterprise library but also not work with workflow services. To view full discussion please follows this link.

    http://entlib.codeplex.com/discussions/357087

    And thanks to "randylevy” for his support and understanding