[英]@aspnet/signalr vs @microsoft/signalr javascript libraries
[英]'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.