我有一个实现crud方法的web api,我的客户端是windows 8 app。 我试图绑定web api响应:json对象(玩家)到我的xaml,我只想拥有这些玩家的名字,我尝试了一些东西,但我只得到了对象的名字(Common.Models) .Player)。
protected override async void OnNavigatedTo(NavigationEventArgs e)
{
var server = "http://localhost:1504/api";
var service = System.IO.Path.Combine(server, "Players");
var players = await GetAsync<IEnumerable<Common.Models.Player>>(new Uri(service));
Isplayers.ItemsSource = players;
}
public async System.Threading.Tasks.Task<T> GetAsync<T>(Uri uri)
{
using (var http = new Windows.Web.Http.HttpClient())
{
http.DefaultRequestHeaders.Add("Accept", "application/json");
var response = await http.GetAsync(uri);
if (response.StatusCode != Windows.Web.Http.HttpStatusCode.Ok)
{
throw new Exception(response.StatusCode.ToString());
}
string json = await response.Content.ReadAsStringAsync();
return Newtonsoft.Json.JsonConvert.DeserializeObject<T>(json);
}
}
这是我的xaml:
<ListBox Name="Isplayers" ItemsSource="{Binding players}" Grid.Column="1" Grid.Row="1" Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<DataTemplate>
<StackPanel Orientation="Vertical">
<TextBlock Text="{Binding NamePlayer}" FontSize="20"></TextBlock>
</StackPanel>
</DataTemplate>
</ListBox>
我是操纵json的新手,任何帮助!