SignalR OnConnected не найден подходящий метод для перезаписи?

#asp.net-core #signalr #signalr-hub #asp.net-core-signalr

#asp.net-core #signalr #signalr-hub #asp.net-core-signalr

Вопрос:

Мой OnConnected говорит: «NotificationHub.OnConnected()’: не найдено подходящего метода для переопределения

 using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.SignalR;

namespace NotificationManager.Push.Hubs
{
    [Authorize]
    public class NotificationHub : Hub
    {
        public async Task SendNotificationAsync(List<string> users, string title, string message)
        {
            await Clients.Users(users).SendAsync("ReceiveNotification", title,  message);
        }

        public override Task OnConnected()
        {
            string name = Context.User.Identity.Name;

            Groups.AddToGroup(Context.ConnectionId, name);

            return base.OnConnected();
        }
    }
}
 

Я импортировал SignalR, я не понимаю, как он не может найти метод для переопределения из расширения концентратора.

Ответ №1:

Это потому, что метод, который вы хотите переопределить, таков OnConnectedAsync . Вы можете ознакомиться с документами по адресу https://docs.microsoft.com/aspnet/core/signalr/hubs?view=aspnetcore-5.0#handle-events-for-a-connection для получения дополнительной информации.

Кроме того, я предлагаю использовать IDE для написания кода, особенно если вы с ним не знакомы, так как это облегчит понимание того, какой метод вы пытаетесь переопределить.