使用signar,如何将字典(关联数组)发送到Javascript?

使用signar,如何将字典(关联数组)发送到Javascript?,javascript,signalr,Javascript,Signalr,字典是不可序列化的,因此不能通过信号器将JavaScript代码作为JavaScript(伪)关联数组发送给我的客户端 在.net中,我的复杂类型是: public class MyClass { public [primitive] whatever {get;set;} ... public Dictionary<string, string> Properties { get; set; } } 更新: 我首先尝试序列化字符串,因为我通过SQL Servic

字典是不可序列化的,因此不能通过信号器将JavaScript代码作为JavaScript(伪)关联数组发送给我的客户端

在.net中,我的复杂类型是:

public class MyClass {
   public [primitive] whatever {get;set;}
   ...
   public Dictionary<string, string> Properties { get; set; }
}
更新:

我首先尝试序列化字符串,因为我通过SQL Service Broker路由实例。在这一行:

XmlSerializer serializer = new XmlSerializer(typeof(T));
其中T是MyClass的类型

反映类型[MyClass]时出错

无法序列化成员[MyClass]。System.Collections.Generic.Dictionary`2[[System.String,mscorlib,Version=4.0.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089],[System.String,mscorlib,Version=4.0.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089],因为它实现了IDictionary


我觉得我要回答我自己的问题了…

Signal使用Json.NET,它肯定能够序列化
字典。您应该能够以您在问题中建议的确切方式从JS代码访问字典

您是否尝试过使用SignalR发送
MyClass
的实例?如果是这样,它是如何失败的?

我改变了:

XmlSerializer serializer = new XmlSerializer(typeof(T));
致:


(并处理了一些名称空间问题…

我的道歉@halter73,我正在序列化为a,首先从字符串开始。。。(我正在通过SQL Service Broker跳转对象实例)。我已经更新了这个问题。
XmlSerializer serializer = new XmlSerializer(typeof(T));
DataContractSerializer serializer = new DataContractSerializer(typeof(T));