【发布时间】:2015-01-04 06:53:44
【问题描述】:
我正在使用“Xamarin Forms”开发一个应用程序,并且我正在使用 Visual Studio 2013 来开发该应用程序。 我的问题是, 在我的应用程序中,我使用宁静的服务来发布/获取数据。 整个代码写在“Xamarin 共享项目”中 这是我的代码:
using System.Threading.Tasks;
using System.Net.Http;
namespace Sher.Services
{
public class CustomerService : ICustomerService
{
public async Task<string> TopEntries(String uri)
{
var client = new HttpClient();
var result = await client.GetStringAsync(uri); //"http://api.ihackernews.com/page"
return result;
}
}
public interface ICustomerService
{
Task<string> TopEntries();
}
}
在这里我面临一个小问题。 我可以调用服务方法并在我的服务器中执行服务方法。 但返回结果总是给出“NULL”。我不知道为什么。 谁能帮我解决这个问题。 提前致谢。
【问题讨论】:
-
你怎么知道它是否真的为空?请注意,在这种情况下,当获取数据时,异步方法将立即退出并继续。
-
@MihaMarkic 当我逐行执行时,在此行之后“var result = await client.GetStringAsync(uri);”控制器移动到方法的末尾。它不会移动到下一行。
-
当您调用 TopEntries(string) 函数时,请尝试这样做: TopEntries(string).ContinueWith(t=> ... );并检查 t 是否有异常
-
如果你能打包一个小例子发邮件给我,我去看看。我的联系方式在我的个人资料中。
标签: visual-studio-2013 xamarin xamarin-studio xamarin.forms