如何使用 Xamarin 从 tvOS 应用程序调用 get REST API?
How to call a get REST API from a tvOS Application using Xamarin?
我正在尝试从我的 tvOS 应用程序调用 get REST API。以下是我点击按钮时的代码:
async void ButtonClicked(UIButton sender)
{
try
{
HttpClient client = new HttpClient();
var response = await client.GetAsync("rest api url");
if (response.IsSuccessStatusCode)
{
var Response = JsonConvert.DeserializeObject(await response.Content.ReadAsStringAsync());
if (!string.IsNullOrWhiteSpace(Response.ToString()))
{
var category = JsonConvert.DeserializeObject<Videos>(Response.ToString());
Debug.WriteLine("count:>>" + category.webContentCategoryList.Count);
}
}
}
catch(Exception e)
{
Debug.WriteLine("Exception:>>"+e);
}
我已经安装了 system.net.http
和 newtonsoft.json
nuget 包。但是当我 运行 项目应用程序显示 Main.cs
文件时,如下图所示:
我是不是漏掉了什么?
更新
我在 ButtonClicked
函数的第一行添加了断点。当我点击按钮时,应用程序显示 Main.cs
文件,如上图所示。它没有命中 ButtonClicked
函数的第一行。
所以问题是另外一回事,我不是 tvOS 应用程序方面的专家,所以我无法弄清楚。我已经上传了一个示例项目 here.
我已经通过将服务调用分离到如下新函数来解决此问题,新函数是异步方法:
partial void ButtonClicked(UIButton sender)
{
LoadData();
}
async void LoadData()
{
HttpClient client = new HttpClient();
var response = await client.GetAsync("service url");
if (response.IsSuccessStatusCode)
{
var Response = JsonConvert.DeserializeObject(await response.Content.ReadAsStringAsync());
if (!string.IsNullOrWhiteSpace(Response.ToString()))
{
var category = JsonConvert.DeserializeObject<Videos>(Response.ToString());
Debug.WriteLine("count:>>" + category.Count);
}
}
}
我的 XF Thread 在这里了解更多详情。
我正在尝试从我的 tvOS 应用程序调用 get REST API。以下是我点击按钮时的代码:
async void ButtonClicked(UIButton sender)
{
try
{
HttpClient client = new HttpClient();
var response = await client.GetAsync("rest api url");
if (response.IsSuccessStatusCode)
{
var Response = JsonConvert.DeserializeObject(await response.Content.ReadAsStringAsync());
if (!string.IsNullOrWhiteSpace(Response.ToString()))
{
var category = JsonConvert.DeserializeObject<Videos>(Response.ToString());
Debug.WriteLine("count:>>" + category.webContentCategoryList.Count);
}
}
}
catch(Exception e)
{
Debug.WriteLine("Exception:>>"+e);
}
我已经安装了 system.net.http
和 newtonsoft.json
nuget 包。但是当我 运行 项目应用程序显示 Main.cs
文件时,如下图所示:
我是不是漏掉了什么?
更新
我在 ButtonClicked
函数的第一行添加了断点。当我点击按钮时,应用程序显示 Main.cs
文件,如上图所示。它没有命中 ButtonClicked
函数的第一行。
所以问题是另外一回事,我不是 tvOS 应用程序方面的专家,所以我无法弄清楚。我已经上传了一个示例项目 here.
我已经通过将服务调用分离到如下新函数来解决此问题,新函数是异步方法:
partial void ButtonClicked(UIButton sender)
{
LoadData();
}
async void LoadData()
{
HttpClient client = new HttpClient();
var response = await client.GetAsync("service url");
if (response.IsSuccessStatusCode)
{
var Response = JsonConvert.DeserializeObject(await response.Content.ReadAsStringAsync());
if (!string.IsNullOrWhiteSpace(Response.ToString()))
{
var category = JsonConvert.DeserializeObject<Videos>(Response.ToString());
Debug.WriteLine("count:>>" + category.Count);
}
}
}
我的 XF Thread 在这里了解更多详情。