[OperationContract]
[WebInvoke(Method = "POST",ResponseFormat = WebMessageFormat.Json,RequestFormat = WebMessageFormat.Json,UriTemplate = "data")]
string PostData(User u);
public string PostData(User u)
{
return "Received: " + u.name+" " +u.title;
}
客户端:
private void button3_Click(object sender, EventArgs e)
{
string json = null;
WebClient client = new WebClient();
client.Headers["Content-Type"] = "application/json";
DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(User));
using (MemoryStream stream = new MemoryStream())
{
serializer.WriteObject(stream, new User { name="suzhi",age=12,title="uu"});
stream.Flush();
json = Encoding.UTF8.GetString(stream.ToArray(), 0, (int)stream.Length);
}
client.UploadStringCompleted += new UploadStringCompletedEventHandler(client_UploadStringCompleted);
client.UploadStringAsync(new Uri("http://192.168.15.236:7117/data"), "POST", json);
}
void client_UploadStringCompleted(object sender, UploadStringCompletedEventArgs e)
{
if (e.Error == null)
{
MessageBox.Show("OK");
}
else
{
MessageBox.Show(e.Error.Message);
}
}