我认为这是因为我的json给了我一个数组,但我不知道它是如何解决的,这就是我所做的。(我是新手(
使用Web服务在Visual Studio 2019(xamarin.form(中运行,但URL是隐藏的,所以不要注意。
---我的-json---
{
"cuentas":[
{
"cuenta":"0500",
"usuario":41
},
{
"cuenta":"0508",
"usuario":6
},
{
"cuenta":"0522",
"usuario":41
},
{
"cuenta":"0532",
"usuario":41
},
null
]
}
---WSClient.cs---
class WSClient
{
public async Task<T> Post<T>(string url, StringContent c)
{
var client = new HttpClient();
var response = await client.PostAsync(url, c);
var json = await response.Content.ReadAsStringAsync();
return JsonConvert.DeserializeObject<T>(json);
}
}
----昆塔.cs---
public class Cuenta
{
public string cuenta { get; set; }
public int usuario { get; set; }
}
------主页.xaml.cs-----
private async void BtnCall_Clicked(object sender, EventArgs e)
{
WSClient client = new WSClient();
string dato = "";
StringContent content = new StringContent(dato, Encoding.UTF8, "application/json");
var result = await client.Post<Cuenta>("http://www.***", content);
if (result != null) {
lblCuenta.Text = result.cuenta;
lblUsuario.Text = result.cuenta;
}
}
它没有向我展示任何东西,也没有给我任何错误......有什么建议吗?
(如果我在"WSClient"中使用WriteLine,我可以在控制台中看到json(
你的类应该看起来像这样(使用 json2csharp.com(
public class Cuenta
{
public string cuenta { get; set; }
public int usuario { get; set; }
}
public class RootObject
{
public List<Cuenta> cuentas { get; set; }
}
var result = await client.Post<RootObject>("http://www.***", content);