如何将Dictionary数组传递给.NET方法

时间:2016-03-23 12:06:37

标签: c# ios

我正在尝试将字典数组发送到.NET webService方法,该方法采用List<>作为参数。但我也得到同样的例外。 .NET服务器中的方法标题名称是

public int SaveCustomerDetails(string cardNumber, string loginId,
    List<CustomerFieldDetails> customerDetailsParams)

我的字典数组为

(
    {
    FieldType = TEXT;
    FieldValue = abcd;
    name = "customer_name";
},
    {
    FieldType = TEXT;
    FieldValue = "middlename";
    name = "middle_name";
},
    {
    FieldType = TEXT;
    FieldValue = "lastname";
    name = "last_name";
})

请帮助我。提前谢谢。

我正在使用SoapEngine

SoapEngine *soap = [[SoapEngine alloc] init];
[soap setValue:self.customerFieldDetails forKey:@"customerDetailsParams"];
[soap requestToSaveCustomerDetailsWithCompletionHandler:^(NSInteger statusCode, NSDictionary *dict) {

    } failure:^(NSError *error) {

    }];

1 个答案:

答案 0 :(得分:0)

使用符号[和]格式化JSON中的数组。在你的例子中(它没有满)我没有看到方括号但你使用圆括号。您还使用=符号而不是:字段名称与其值之间。 因此,正确的对象数组应该是:

"customerDetailsParams": [
    {
    FieldType : TEXT,
    FieldValue : abcd,
    name : "customer_name",
},
    {
    FieldType : TEXT,
    FieldValue : "middlename",
    name : "middle_name",
},
    {
    FieldType : TEXT,
    FieldValue : "lastname",
    name : "last_name",
}]