首页 / 软件开发 / Silverlight / 稳扎稳打Silverlight(19) - 2.0通信之调用REST服务,处理JSON格式……
稳扎稳打Silverlight(19) - 2.0通信之调用REST服务,处理JSON格式……2010-04-26 cnblogs webabcd稳扎稳打Silverlight(19) - 2.0通信之调用REST服务,处理JSON格式,XML格式,RSS/ATOM格式的数据介绍Silverlight 2.0 调用REST服务,处理JSON格式, XML格式, RSS/ATOM格式的数据通过 System.Net.WebClient 类调用 REST 服务通过 System.Json 命名控件下的类处理 JSON 数据通过 System.Xml.Linq 命名空间下的类(LINQ to XML)处理 XML 数据通过 System.ServiceModel.Syndication 命名空间下的类处理 RSS/ATOM 数据在线DEMOhttp://www.cnblogs.com/webabcd/archive/2008/10/09/1307486.html示例1、调用 REST 服务,返回 JSON 数据REST.cs(WCF创建的REST服务)using System;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.ServiceModel.Activation;
using System.ServiceModel.Web;
using System.Collections.Generic;
using System.Text;
using System.IO;
/**//// <summary>
/// 提供 REST 服务的类
/// 注:Silverlight只支持 GET 和 POST
/// </summary>
[ServiceContract]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
public class REST
{
/**//// <summary>
/// 用于演示返回 JSON(对象) 的 REST 服务
/// </summary>
/// <param name="name"></param>
/// <returns></returns>
[OperationContract]
[WebGet(UriTemplate = "User/{name}/json", ResponseFormat = WebMessageFormat.Json)]
public User HelloJson(string name)
{
return new User { Name = name, DayOfBirth = new DateTime(1980, 2, 14) };
}
/**//// <summary>
/// 用于演示返回 JSON(集合) 的 REST 服务
/// </summary>
/// <returns></returns>
[OperationContract]
[WebGet(UriTemplate = "Users/json", ResponseFormat = WebMessageFormat.Json)]
public List<User> HelloJson2()
{
return new List<User>
{
new User(){ Name = "webabcd01", DayOfBirth = new DateTime(1980, 1, 1) },
new User(){ Name = "webabcd02", DayOfBirth = new DateTime(1980, 2, 2) },
new User(){ Name = "webabcd03", DayOfBirth = new DateTime(1980, 3, 3) },
};
}
}