本帖最后由 puzhichen 于 2014-06-27 09:30:55 编辑

解决方案 »

  1.   

    You are using a version of the client that isn't compatible with the server. Client version 1.3, server version 1.2.你这错误就是 “你正在使用一个版本的客户端与服务器不兼容。”还是看看SignalR版本是否一致,重新引用一下试试。
      

  2.   

    我web端和控制台都是用的同一类库,应该不是SignalR版本差异的问题。
      

  3.   

    你的jquery.signalR版本是多少,里面提到的jQuery要求的版本是多少?
      

  4.   

    client是1.3,server是1.2。干嘛不用2.0。
      

  5.   

    我用的就是jquery.signalR 1.2.0 和 jQuery1.6.4,我查了下是支持的。
      

  6.   

    这个因为目前都是在4.0的基础上做的东西,SignalR 2.0 需要.net4.5支持,所以就没有用了。
    错误提示确实是 说client是1.3,server是1.2,但是我web端和控制台都是引用的同一DLL,估计还有其他其他问题导致出现这里的版本不一致问题。
      

  7.   

    根据你的包<package id="Microsoft.AspNet.SignalR.Client" version="2.0.2" targetFramework="net40" />,Microsoft.AspNet.SignalR.Client应该是1.3的,可能你的服务器并不不引用这个文件,那么就跟"同一类库"没大关系了。
    重新下载一个1.2的看一下:
    Microsoft ASP.NET SignalR .NET Client 1.2.0
    我用的就是jquery.signalR 1.2.0 和 jQuery1.6.4,我查了下是支持的。
      

  8.   

    packages.config文件也顺便一起改了吗?或者再加上allowedVersions="[1.0,2)"<?xml version="1.0" encoding="utf-8"?>
    <packages>
      <package id="jQuery" version="1.6.4" targetFramework="net40" allowedVersions="[1.6.4,2)" />
      <package id="Microsoft.AspNet.SignalR" version="1.2.0" targetFramework="net40" allowedVersions="[1.0,2)" />
      <package id="Microsoft.AspNet.SignalR.Client" version="1.2.0" targetFramework="net40" allowedVersions="[1.0,2)" />
      <package id="Microsoft.AspNet.SignalR.Core" version="1.2.0" targetFramework="net40" allowedVersions="[1.0,2)" />
      <package id="Microsoft.AspNet.SignalR.JS" version="1.2.0" targetFramework="net40" allowedVersions="[1.0,2)" />
      <package id="Microsoft.AspNet.SignalR.Owin" version="1.2.0" targetFramework="net40" allowedVersions="[1.0,2)" />
      <package id="Microsoft.AspNet.SignalR.SystemWeb" version="1.2.0" targetFramework="net40" allowedVersions="[1.0,2)" />
      <package id="Microsoft.Owin.Host.SystemWeb" version="1.0.1" targetFramework="net40" allowedVersions="[1.0,2)" />
      <package id="Microsoft.Web.Infrastructure" version="1.0.0.0" targetFramework="net40" />
      <package id="Newtonsoft.Json" version="6.0.3" targetFramework="net40" />
      <package id="Owin" version="1.0" targetFramework="net40" />
    </packages>
    ....还是一样的
      

  9.   

    我下载了你的项目,不过你还是用的Microsoft.AspNet.SignalR.Client 2.02版本的,所以没有效果。
    1. 打开你的项目
    2. SignalR_GroupTest\packages.config,修改  <package id="Newtonsoft.Json" version="6.0.3" targetFramework="net40" allowedVersions="[1.0,2)" />为  <package id="Newtonsoft.Json" version="6.0.3" targetFramework="net40"" />
    3. 在VS菜单上依次点击工具->NuGet程序包管理器->程序包管理器控制台,然后再控制台输入Install-Package Microsoft.AspNet.SignalR.Client -Version 1.2.0,这样就会更新Microsoft.AspNet.SignalR.Client为1.2.0的
    4.重新打开SignalR_GroupTest\packages.config,检查是否更新为<package id="Microsoft.AspNet.SignalR.Client" version="1.2.0" targetFramework="net45" allowedVersions="[1.0,2)" />
    4.编译运行你的程序
    如果还有问题,请告知
    要不您瞧瞧代码
      

  10.   

    2,3两步好像有冲突,当运行 Install-Package Microsoft.AspNet.SignalR.Client -Version 1.2.0时,就会自动把Newtonsoft.Json替换为Newtonsoft.Json.4.5.11版本,然后编译成功,但是打开页面报错提示找不到Newtonsoft 6.0.0。这时候SignalR_GroupTest\packages.config的版本显示为<package id="Microsoft.AspNet.SignalR.Client" version="1.2.0" targetFramework="net45" allowedVersions="[1.0,2)" />PS:之前报错的地方是在SignalRConsole项目的Program.cs下的   connection.Start().Wait();这句,
      

  11.   

    能给个你那里能调的通的Demo么