簡體   English   中英

&#39;Microsoft.AspNet.SignalR.Hubs.IHubCallerConnectionContext <object> &#39;不包含&#39;Group&#39;的定義

[英]'Microsoft.AspNet.SignalR.Hubs.IHubCallerConnectionContext<object>' does not contain a definition for 'Group'

我是ASP.NET C#中的signalR的新手。 問題是,我在Person類中使用狀態管理而不是Group屬性。

 public class Person
{
   public string Name { get; set; }
    public string Message { get; set; }

  //  public string Group { get; set; }
}

客戶代碼通過州

<script src="scripts/jquery-1.6.4.min.js"></script>

<script src="scripts/jquery.signalR-2.2.2.min.js"></script>

<script src="/signalr/hubs" type="text/javascript"></script>

<script type="text/javascript">
    $(function () {
        var broadcaster = $.connection.firstHub;

        broadcaster.client.displayText = function (name, message) {
            $('#messages').append('<li>' + name + ' said: ' + message + '</li>');
        };

        $.connection.hub.start().done(function () {
            $("#broadcast").click(function () {
                broadcaster.server.join($('#groupName').val());
                broadcaster.state.GroupName = $('#groupName').val();
                 broadcaster.server.broadcastMessage({ Name: $('#name').val(),Message: $('#message').val() });
                broadcaster.server.leave($('#groupName').val());
            });
        });
    });
</script>

<div>
    <input type="text" id="groupName" />
    <input type="text" id="name" />
    <input type="text" id="message" />
    <input type="button" id="broadcast" value="Broadcast" />

    <ul id="messages"></ul>
</div>

集線器實施以使用狀態值

[HubName("firstHub")]
public class Chapter3Hub : Hub
{
    public void BroadcastMessage(Person person)
    {

    Context.ConnectionId).displayText(person.Name, person.Message);

        Clients.Group(Clients.Caller.GroupName).displayText(person.Name, person.Message);

    }

    public Task Join(string groupName)
    {
        return Groups.Add(Context.ConnectionId, groupName);
    }

    public Task Leave(string groupName)
    {
        return Groups.Remove(Context.ConnectionId, groupName);
    }  
}

當我運行時,VS對此進行了調試。 “ Microsoft.AspNet.SignalR.Hubs.IHubCallerConnectionContext”不包含“組”的定義

我已經修改了這行。

  Clients.Group((string)Clients.Caller.GroupName).displayText(person.Name, person.Message);

並成功運行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM