gpt4 book ai didi

c# - SignalR 未序列化/反序列化自定义 DataMember 名称

转载 作者:行者123 更新时间:2023-12-04 00:55:58 25 4
gpt4 key购买 nike

我正在做一个项目并试图将 SignalR 集成到其中。我有一个带有数据契约的类,它允许我在客户端上使用下划线分隔的格式,在服务器上使用标准的 Pascal Case,如下所示:

[DataContract]
public class Foo {

[DataMember(Name = "first_name")]
FirstName { get;set; }

[DataMember(Name = "last_name")]
LastName { get;set; }

[DataMember(Name = "phone")]
Phone { get;set; }
}
这在通过 fetch 命令将数据传递到 Razor Page OnGet 和 OnPost 方法时工作正常,但在使用 SignalR 时不起作用。
通过 SignalR 向服务器发送数据时, first_namelast_name为空,而 phone正确发送。
我怎样才能让 SignalR 尊重 DataMember序列化/反序列化时的名称?

最佳答案

我能够通过使用 Microsoft.AspNetCore.SignalR.Protocols.NewtonsoftJson 来解决这个问题。打包并在 Startup.cs 中添加以下内容

services.AddSignalR()
.AddNewtonsoftJsonProtocol();

关于c# - SignalR 未序列化/反序列化自定义 DataMember 名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62555943/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com