Отправка сложных объектов клиенту через 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 и тд. принимаются клиентом, а более сложные типы нет. Как это решить?