2015-02-09 55 views
0

我在MVC 5使用SignalR并试图建立与我Hub类(MyHub.cs)通过JavaScript连接,但得到以下错误消息HUB类:SignalR问题:无法连接到

Uncaught TypeError: Cannot read property 'client' of undefined

这里我的代码,我想创建连接到SignalR:上google但不

var client= $.connection.myHub; 

我已经探索了很多摹设置任何相关的解决方案。请帮我弄清楚这个问题。

在此先感谢。

+0

没有足够的代码 – 2015-02-09 18:28:39

回答

0

我已经找到了解决的办法,刚刚从web.config

<add key="owin:AutomaticAppStartup" value="false" /> 

它为我删除下面一行。

1

你必须参考下面的代码。 我的观点有以下menioned代码

<script src="~/Scripts/jquery.signalR-2.1.2.min.js"></script> 
<script src="~/signalr/hubs"></script> 
<script> 
$(function() 
{ 
    var connectionHub = $.connection.commentHub; 
    connectionHub.client.addNewComment = function (comment) 
    { 

     $("#Comment-list").append("<li>" + comment + "</li>"); 

    }; 

    $.connection.hub.start().done(function() 
    { 
     $('#valueofcomment').keypress(function (event) { 
      var keycode = (event.keyCode ? event.keyCode : event.which); 
      if (keycode == '13') { 
       var UserName = '@Session["UserName"].ToString()' + '::' + $("#valueofcomment").val(); 
       connectionHub.server.addComment(UserName); 
       $("#valueofcomment").val(""); 
       return false; 
      } 
     }); 

     $("#InserComment").click(function() 
     { 

      var UserName = '@Session["UserName"].ToString()' + '::' + $("#valueofcomment").val(); 
      connectionHub.server.addComment(UserName); 
      $("#valueofcomment").val(""); 
     }); 
    }); 
}); 
</script> 

忽略的内在逻辑这是我的要求。你必须看看它使用的方法。

我CommentHub类的样子

public class CommentHub:Hub 
{ 
    public void AddComment(string Comment) 
    { 
     var Context = new SignalREntities(); 
     Comment com = new Comment(); 
     com.Comment1 = Comment; 
     Context.Comments.Add(com); 
     Context.SaveChanges(); 

     Clients.All.AddNewComment(Comment); 


    } 

} 
+0

如果你想然后我会给你我的工作示例 – 2015-02-09 06:23:51

+0

确定给我你的样品它会对我有帮助。 – 2015-02-09 06:27:13

+0

根据你的代码行'var connectionHub = $ .connection.commentHub;'给出错误。 – 2015-02-09 11:03:38