簡體   English   中英

asp.net core 3.1 SignalR:將復雜對象從 javascript 客戶端傳遞到集線器

[英]asp.net core 3.1 SignalR: pass complex object from javascript client to Hub

我正在嘗試將對象從客戶端傳遞到集線器:在客戶端上:

connection.invoke('MyMethod', {
                i: 1,
                a: 25
            });

在集線器上:

        public async Task MyMethod(TestModel model)
        {
            // logic
        }

模型:

public class TestModel
{
    [JsonProperty("i")]
    public double Min {get;set;}
    [JsonProperty("a")]
    public double Max {get;set;}
}

在 MyMethod 中,模型不為空,但值始終為 0。

我做錯了什么?

根據您的描述,您應該在 ASP.NET Core 3.0 SignalR 項目中使用 Newtonsoft.Json,因為 ASP.NET Core 默認不使用 Newtonsoft.Json。

您應該安裝Microsoft.AspNetCore.SignalR.Protocols.NewtonsoftJson NuGet 包,然后修改 startp.cs ConfigureServices 方法如下:

services.AddSignalR()
    .AddNewtonsoftJsonProtocol();

更多細節,你可以參考這篇文章

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM