Reputation: 870
I'm trying to pass an object from client to hub: On client:
connection.invoke('MyMethod', {
i: 1,
a: 25
});
On hub:
public async Task MyMethod(TestModel model)
{
// logic
}
Model:
public class TestModel
{
[JsonProperty("i")]
public double Min {get;set;}
[JsonProperty("a")]
public double Max {get;set;}
}
In the MyMethod the model is not null, but the values are always 0.
What I'm doing wrong?
Upvotes: 2
Views: 1951
Reputation: 28067
According to your description, you should use Newtonsoft.Json in an ASP.NET Core 3.0 SignalR project, since the asp.net core doesn't use Newtonsoft.Json by default.
You should install the Microsoft.AspNetCore.SignalR.Protocols.NewtonsoftJson NuGet package and then modify the startp.cs ConfigureServices method as below:
services.AddSignalR()
.AddNewtonsoftJsonProtocol();
More details, you could refer to this article.
Upvotes: 7