Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 反序列化具有数组的对象(Ajax调用+C)_C#_Javascript_Arrays_Ajax_Json - Fatal编程技术网

C# 反序列化具有数组的对象(Ajax调用+C)

C# 反序列化具有数组的对象(Ajax调用+C),c#,javascript,arrays,ajax,json,C#,Javascript,Arrays,Ajax,Json,我在反序列化一个具有两个属性的对象时遇到了很多困难,一个是简单字符串,另一个是数组数组数组,而数组中的每个元素都有一个名称和一个值 POST操作非常有效,直到我到达服务器端,我可以在那里进行调试,但无法正确地反序列化传递的数据。 我正在尝试将someData对象反序列化为服务器端的RequestObject 我想听听你的建议,因为我在这件事上浪费了最后的时间 在客户端:JavaScript 在服务器端:C 通过将RequestObject更改为 [DataContract] publi

我在反序列化一个具有两个属性的对象时遇到了很多困难,一个是简单字符串,另一个是数组数组数组,而数组中的每个元素都有一个名称和一个值

POST操作非常有效,直到我到达服务器端,我可以在那里进行调试,但无法正确地反序列化传递的数据。 我正在尝试将someData对象反序列化为服务器端的RequestObject

我想听听你的建议,因为我在这件事上浪费了最后的时间

在客户端:JavaScript

在服务器端:C


通过将RequestObject更改为

 [DataContract]
    public class RequestObject
    {
        [DataMember]
        public string someKey { get; set; }
        [DataMember]
       public List<List<StringData>> dataArrays{ get; set; }
    }
    [WebMethod]
    [ScriptMethod(ResponseFormat = ResponseFormat.Json)]
    public string Test(string someKey, string dataArrays)
    {
        // someKey has the value: "xyz"
        // dataArrays is a string in the following format:
        // [[{"name":"key","value":"xyz"}],[{"name":"firstname","value":"john"}{"name":"lastname","value":"doe"}]]

        //unable to deserialize in here in any way
        // ?? RequestObject requestObj = JsonConvert.DeserializeObject<RequestObject> ??

    }

    [DataContract]
    public class StringData
    {
        [DataMember]
        public string name { get; set; }
        [DataMember]
        public string value { get; set; }
    }

    [DataContract]
    public class RequestObject
    {
        [DataMember]
        public string someKey { get; set; }
        [DataMember]
        public List<StringData[]> dataArrays{ get; set; }
    }
 [DataContract]
    public class RequestObject
    {
        [DataMember]
        public string someKey { get; set; }
        [DataMember]
       public List<List<StringData>> dataArrays{ get; set; }
    }