【发布时间】:2017-06-01 13:39:24
【问题描述】:
public async Task<string> insert(string x, string y, string z)
{
using (var client = new HttpClient())
{
var payload = new rootnode { username = x, userpassword = y, usermobile = z };
var stringPayload = await Task.Run(() => JsonConvert.SerializeObject(payload));
var entry = new StringContent(stringPayload, Encoding.UTF8, "application/json");
System.Diagnostics.Debug.WriteLine(entry);
var result = await client.PostAsync("http://localhost:20968/Service1.svc/insert/", entry);
return await result.Content.ReadAsStringAsync();
}
}
只有当我使用 entry=""
手动编写 url 时,我的功能才能很好地工作client.PostAsync("http://localhost:20968/Service1.svc/insert/x,y,z", "entry");
这也是我的 webget 方法
[WebInvoke(Method = "POST",BodyStyle = WebMessageBodyStyle.Wrapped, ResponseFormat = WebMessageFormat.Json,UriTemplate = "insert/{username}/{userpassword}/{usermobile}")]
【问题讨论】:
-
它只有在我设置 entry="" 时才有效,并且 url 像这样 "localhost:20968/Service1.svc/insert/x/y/z"
标签: c# wcf xamarin.forms dotnet-httpclient