2014-09-05 40 views
2

我是Windows手机应用程序开发的新手。我已经为Windows安装了Visual Studio Express 2013的免费版本。如何为Windows 8.1手机应用程序开发调用REST Web服务

我想为windows phone 8.1构建一个windows phone应用程序。 我的问题是在按钮单击我想调用一个REST后端Web服务,它将返回一个响应JSON对象。

我查看了论坛,但找不到任何可以成功实施的内容。

有人能请我指出正确的方向吗?

谢谢。

回答

4

开始之前,你需要以下的NuGet软件包添加到您的项目:

如果您的JSON是这样的:

[ 
    { 
    "id": "1", 
    "title": "Hello" 
    } 
] 

你需要编辑类的对象为“设置链接” json的性质和你的对象属性之间:

public class YourObject 
    { 
     [JsonProperty("id")] 
     public String Id{ get; set; } 

     [JsonProperty("title")] 
     public String Title { get; set; } 
    } 

说明有关方法如下: U制作一个新的HttpClient()对象,用它对给定的URL进行“GET”。如果HttpResponse成功(这意味着数据可用),则可以对数据执行某些操作。在你的情况下,它将json数据反序列化为一个对象。

public async Task<YourObject> GetObject() 
     { 
      YourObject o = new YourObject(); 

      using (HttpClient client = new HttpClient()) 
      { 
       using (HttpResponseMessage response = await client.GetAsync(url)) 
       { 
        if (response.IsSuccessStatusCode) 
        { 
         string content = await response.Content.ReadAsStringAsync(); 
         o= await JsonConvert.DeserializeObjectAsync<YourObject>(content); 
        } 
       } 
      } 
      return o; 
     } 

我希望我的解释清楚,并且这可以帮助你进一步。

+0

告诉我理由建立起始返回o的实例;将返回您的新实例或DeserializeObjectAsync。不清楚。 我想你不需要为启动o的生成实例。了。 – 2015-11-04 10:45:25

0

网上有很多很好的文章,其题目与题目标题几乎相同。不过,这里有几个步骤

  1. 为了让REST调用,你要使用的HttpClient类
  2. 响应数据可以很容易地拉出作为一个JSON字符串,你将不得不反序列化到您的C#对象。用于使用JSON的最佳和最流行的库是JSON.NET。

一个顶级的搜索结果: Consuming REST Services in your Windows Store and Phone Applications

相关问题