我正在尝试使用 NSJsonSerialization.Serialize
将 NSDictionary
转换为 Json
。但是我没有得到预期的输出
Xamarin.iOS 中的代码
var dictionary = new NSDictionary(
new NSString("userName"), new NSString("450012"),
new NSString("password"), new NSString("Abc134"),
new NSString("companyId"), new NSString("CM1")
);
request.Body = NSJsonSerialization.Serialize(dictionary, 0, out error);
问题是 dictionary
变量的值正在显示
{{password":Abc134,companyId:CM1,userName:450012}}
代替
{password:Abc134,companyId:CM1,userName:450012}
前后各加一个花括号
有什么方法可以为用户输入值生成正确的 json 字符串
最佳答案
你的json没有问题。如果您在控制台中打印它,您将看到正在打印的值是您期望的值。
{"password":"Abc134","companyId":"CM1","userName":"450012"}
尝试一下:
Console.WriteLine($"{json}");
如果您真的非常想摆脱那些“额外的”大括号,只需将结果转换为字符串即可。
var jsonString = json.ToString();
上面应该做的工作。
我只是建议您将方法更改为:
var json2 = NSJsonSerialization.Serialize(dictionary, NSJsonWritingOptions.PrettyPrinted, out error);
使用 PrettyPrinted选项。
希望这有帮助。-
关于xamarin - Xamarin.iOS 中的 NSDictionary 到 Json,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54709362/