我有一个REST服务,它接受PUT请求的URL中的id。到目前为止,PUT请求看起来像这样:
string url = "http://localhost:3596/WidgetManager.svc/Widgets/" + TextBox3.Text;
WebRequest req = WebRequest.Create(url);
req.Method = "PUT";
using (HttpWebResponse resp = req.GetResponse() as HttpWebResponse)
{
StreamReader reader = new StreamReader(resp.GetResponseStream());
Label4.Text = reader.ReadToEnd();
}
但我还需要在请求中发送一个Widget对象。
Widget w = new Widget();
w.Name = "worked!!!";
w.CogCount = 1000;
w.SprocketSize = 2000;
我看到很多关于如何发送字符串的例子。但是像这样的物体呢?
答案 0 :(得分:0)
您可以使用XML或JSON对其进行序列化。 如果它是一个如此小的对象,你可以编写自己的小方法,如
.toJSON() {
return '{"Name":"' + this.name + '", "CogCount":' + this.CogCount + ', "SprocketSize":' + this.SprocketSize + '}';
}
//Output: '{"Name":"worked!!!", "CogCount":1000, "SprocketSize":2000}'
另一方面:C#提供了强大的(XML)序列化工具! 这里:http://www.codeproject.com/Articles/1789/Object-Serialization-using-C只是众多例子中的一个。
但是如果你使用PHP或类似的东西,JSON可能会更有趣。