Отправка сложных объектов клиенту через SignalR

Код сервера:

public class ServerHub : Hub
{
    public override async Task OnConnectedAsync()
    {
        var user = new User("Вася петя");

        await Clients.Caller.SendAsync("OnConnected", user);
    }
}

Код клиента:

    static async Task Main()
    {
        var hub = new HubConnectionBuilder().WithUrl("http://localhost:61938/hub").Build();

        hub.On<User>("OnConnected", user =>
        {
            Console.WriteLine(user.Name);
        });

        await hub.StartAsync();
    }

Проблема в том, что такие простые типы как int, string и тд. принимаются клиентом, а более сложные типы нет. Как это решить?


Ответы (0 шт):