【发布时间】:2015-02-14 16:58:23
【问题描述】:
我正在使用 Windows Phone/Store 应用程序的新运行时开发一个 Windows 通用应用程序。我正在使用以下代码向服务器发送请求,并期望得到 HTML 响应。但是,当我返回字符串并在 UI 中显示它时,它只是说:
“System.Threading.Tasks.Task'1[System.String]”
它没有显示应该返回的实际 HTML/XML。当我在普通的 Windows 窗体应用程序中使用相同的 URL 时,它会返回我期望的数据,但我使用的代码不同,因为它是 Win32 而不是 WinRT/这个新 RT。
这是我的代码。我怀疑我没有以正确的格式或其他方式返回数据,但我不知道我应该做什么。
var url = new Uri("http://www.thewebsitehere.com/callingstuff/calltotheserveretc");
var httpClient = new HttpClient();
try
{
var result = await httpClient.GetStringAsync(url);
string checkResult = result.ToString();
httpClient.Dispose();
return checkResult;
}
catch (Exception ex)
{
string checkResult = "Error " + ex.ToString();
httpClient.Dispose();
return checkResult;
}
【问题讨论】:
-
是的,确实返回了
Task<string>。你应该对它的 Result 属性更感兴趣。 -
如果您要处置客户端,然后在
using(){}块中执行此操作。但是HttpClient is different,使用单例。
标签: c# windows-runtime windows-phone-8.1 win-universal-app