Pregunta

Tengo problemas con el ejemplo más básico https://github.com/signalr/signalr/wiki/quickstart-persistent-connections. Recibo "404 en Echo/negociar"

¿Fue útil?

Solución

El ejemplo está desactualizado. Es porque las llamadas predeterminadas de MVC-Project RegisterRoutes (Routetable.Routes);Tienes que mover la MapConnection a dentro de los Registro de registro, después del rutes.ignorRoute ("{Resource} .axd/{*pathInfo}"; pero antes de cualquier otra ruta.

espero que esto ayude

Otros consejos

Obtuve exactamente el mismo error al intentar implementar la muestra básica de conexión persistente, y me tomó bastante tiempo darme cuenta de que se debía a una versión de desajuste para newtonsoft.json, problema y solución descritas aquí:

https://github.com/signalr/signalr/issues/195

Es decir, agregue una sección como:

<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.8.0" newVersion="4.0.8.0" />
</dependentAssembly>

a su web.config.

No sé por qué faltaba esa sección para mí, ya que por lo que entiendo, Nuget debería agregar automáticamente, tal vez algo que ver con Visual Studio 11 Beta. De todos modos, era la solución a mi problema.

Hay dos pasos:
1 en web.config Agregar o editar la regla JSON

 <dependentAssembly> <assemblyIdentity name="Newtonsoft.Json"
 publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
 <bindingRedirect oldVersion="0.0.0.0-4.0.8.0" newVersion="4.0.8.0" />
 </dependentAssembly>


2. Global.asax Agregar nuevo:

RouteTable.Routes.MapConnection<ChatConnection>("negotiate", "/chat");


En método protected void Application_Start(){}

Buena suerte !

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top