2012-07-25 90 views
0

我正在构建.net客户端使用RestSharp的REST应用程序,我需要使用JSON格式将一些数据发布到服务器(服务器应用程序只能接受JSON)。的JSON格式如下:RestSharp JSON序列化

{ "username": "username", "address": { "address1": "address1", "address2": "address2", "town": "Town", "county": "County", "postCode": "postcode", "country": "United Kingdom" } , "contact": { "telephone": "1234", "fax": "12345", "email": "[email protected]"
} }

我需要添加上述数据作为参数传递给请求对象象下面这样:

request.AddBody(new { username = "username" });

的线的上方将使用JSON序列来创建一个JSON字符串,它工作正常,但我不知道如何创建下一个级别(地址,联系人)...所有地址详细信息和联系人详细信息都需要嵌入到地址和联系人元素中。有什么建议?

回答

1

你试过

request.AddBody(new { username = "username", 
address: new { address1: "address1", address2: address2, "town": Town, county: "County", postCode: "postcode", country: United Kingdom } , 
contact: new { telephone: "1234", fax: "12345", email: "[email protected]" }); 

如果您知道接受的格式,应该生成所需的json。

如果运行小提琴手http://www.fiddler2.com/fiddler2/,你让你可以看到你JSON是什么格式的休息急剧JSON串行器踢后的请求(通常json.net应该走在上面),并希望看到它会错

+0

如果您不想编写自定义序列化程序,这绝对是解决RestSharp JSON序列化问题的最简单方法。 – 2014-01-13 11:34:04