La activación del servicio puede producir un error cuando se hospeda un servicio de flujo de trabajo WCF compilado previamente que se ajusta junto con un archivo .svc

Este artículo le ayuda a resolver el problema en el que puede producirse un error en la activación del servicio cuando se hospeda un servicio de flujo de trabajo de Windows Communication Foundation (WCF) compilado previamente que se ajusta junto con un archivo .svc.

Versión del producto original:   Windows Workflow Foundation 4.0
Número KB original:   2286155

Síntomas

Cuando se hospeda un servicio de flujo de trabajo WCF compilado previamente que se ajusta junto con un archivo .svc, la activación del servicio puede producir un error de excepción.

Causa

Este problema puede producirse cuando la ruta de acceso del servicio contiene caracteres que no son en inglés. Por ejemplo, la siguiente ruta de servicio puede causar este problema:
application_name+directory_name+file_name

Solución alternativa

Para solucionar este problema, use la activación basada en la configuración.

Por ejemplo, tenga en cuenta que tiene una aplicación y un servicio de flujo de trabajo WCF compilado previamente, como el que se encapsula en el archivo CalculatorService Service.svc de la siguiente manera:

<% @ServiceHost
language=c#
Factory="System.ServiceModel.Activities.Activation.WorkflowServiceHostFactory,Service="CalculatorService"%>

Cuando CalculatorService se hospeda, la activación del servicio puede producir un error de excepción.

Para solucionar este problema, agregue un elemento similar al siguiente ejemplo a la aplicación para rootearWeb.config archivo:

<System.serviceModel>
    <serviceHostingEnvironment>
        <serviceActivations>
            <add relativeAddress="~/service.svc" service="CalculatorService"
              factory="System.ServiceModel.Activities.Activation.WorkflowServiceHostFactory"/>
        </serviceActivations>
    </serviceHostingEnvironment>
</system.serviceModel>

Más información