webapiapplication tipo pudo mvc cargar asax c# wcf messages channelfactory

c# - tipo - Error de WCF: el direccionamiento manual está habilitado en esta fábrica, por lo que todos los mensajes enviados deben tener una dirección previa



no se pudo cargar el tipo system web mvc viewusercontrol (5)

¡Así que esto finalmente ha llegado a su fin!

Brian, gracias por tu orientación sobre esto. Las vinculaciones no se alinearon correctamente con el cliente y el servidor, y finalmente terminé yendo con lo siguiente en ambas:

<basicHttpBinding> <binding name="TransportSecurity"> <security mode="Transport"> <transport clientCredentialType="None"/> </security> </binding> </basicHttpBinding>

... y estableciendo los atributos de configuración de enlace y vinculación de punto final en consecuencia:

<endpoint binding="basicHttpBinding" bindingConfiguration="TransportSecurity" contract="ServiceReference1.IService" name="WebHttpBinding_IService" address="https://mysslserver.com/Service.svc" />

Como este es un terreno relativamente nuevo para mí, la explicación de por qué esos errores aparecían me llevan en la dirección correcta :).

Tengo un servicio alojado de WCF para el que creé una fábrica personalizada, para que funcione con múltiples encabezados de host:

/// <summary> /// Required for hosting where multiple host headers are present /// </summary> public class MultipleHostServiceFactory : ServiceHostFactory { protected override ServiceHost CreateServiceHost(Type serviceType, Uri[] baseAddresses) { List<Uri> addresses = new List<Uri>(); addresses.Add(baseAddresses[0]); return base.CreateServiceHost(serviceType, addresses.ToArray()); } }

Estoy bastante seguro de que mis archivos de configuración ahora son correctos, tanto en el cliente como en el servidor ( se puede ver aquí ).

El error que recibo parece estar relacionado con la fábrica:

El direccionamiento manual está habilitado en esta fábrica, por lo que todos los mensajes enviados deben tener una dirección previa.

public string GetData(int value) { return base.Channel.GetData(value); }

El error ocurre en la línea return base.Channel.GetData(value); .


Agregué una referencia de servicio como de costumbre y obtuve este error. Resulta que todo lo que tuve que hacer fue modificar la configuración del cliente para usar una configuración de punto final con un comportamiento que especifica webhttp

<client> <endpoint address="http://localhost:9000/GeoConverterService/GeoConverterService.svc" binding="webHttpBinding" contract="GeoConverter.IGeoConverterService" behaviorConfiguration="webhttp"/> </client> <behaviors> <endpointBehaviors> <behavior name="webhttp"> <webHttp/> </behavior> </endpointBehaviors> </behaviors>


Experimenté este error y el problema se resolvió agregando WebHttpBehavior (línea 2 a continuación):

var factory = new ChannelFactory<IService>(new WebHttpBinding(), uri); factory.Endpoint.Behaviors.Add(new WebHttpBehavior()); var proxy = factory.CreateChannel();



Sí, la respuesta de Jason Mardell también funcionó para mí. Mi encuadernación no apuntaba a un comportamiento. entonces en el enlace agregué: behaviorConfiguration="webhttp"