gpt4 book ai didi

c# - SignalR 帮助将 List 传递给客户端

转载 作者:行者123 更新时间:2023-12-02 04:38:40 25 4
gpt4 key购买 nike

使用 SignalR,直到现在都没有问题。这可能是一个简单的问题,但我很困惑。

我在下面发送了一个 C# 对象给客户端:

public class Message
{
// Notifications
public string Title { get; set; }
public string Content { get; set; }
public int zoneCount { get; set; }

public string CntrX { get; set; }
public string CntrY { get; set; }

// Polygon Overlays
List<string> pointList = new List<string>()
}

我将添加到在 C# 对象中定义的 pointList;

    pointList.Add(soveVarX, soneVarY);

在我的客户端 (javascript) 中,SignalR 消息是这样接收的:

 messenger.client.add = function (message){
rmPoly = [{}];

// And then to push...

var sep = ',';
var rmPoly = [];
var len = messages.zoneCount;
for (var i = 0; i < len; i++) {
var obj = {
x: gPoints [0],
y: gPoints [1],
};
rmPoly.push(obj);
};

我正在尝试将我的 pointList 作为对象推送到客户端中名为 rmPoly 的对象数组。到目前为止,我已经试过了:

    var str1= message.pointList[0]; //<------How to get the List object?
var gPoints = str1.split(",");

然后推送...

        var rmPoly = [];
var len = messages.length;
for (var i = 0; i < len; i++) {
var obj = {
x: gPoints [0],
y: gPoints [1],
};
rmPoly.push(obj);

但是 message.pointList[0] 没有值/未定义。

有什么建议或更可行的解决方案吗?

感谢 vtotola 的回答!!...知道这很容易被我错过。这也可能对将来的某人有所帮助。

我能够访问 SignalR 中的列表并将对象推送到下面的数组:

 messenger.client.add = function (message) {
var str1;
var gPoints;
var rmPoly = [];

var len = message.PointList.length;
for (var i = 0; i < len; i++) {
str1 = message.PointList[i];
gPoints = str1.split(",");
rmPoly.push({ x: gPoints[0], y: gPoints[1] });
};
}

最佳答案

在您的代码中,pointList 是私有(private)字段,不会被序列化。使其成为公共(public)属性(property)。

public class Message
{
// Notifications
public string Title { get; set; }
public string Content { get; set; }
public int zoneCount { get; set; }

public string CntrX { get; set; }
public string CntrY { get; set; }

// Polygon Overlays
public List<string> PointList {get; set;}
}

干杯。

关于c# - SignalR 帮助将 List<string> 传递给客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21362413/

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