使用json调用WCF 4.0 Rest服务

时间:2010-12-17 00:18:06

标签: wcf rest

我使用.net 4创建了一个新的wcf休息服务。 我已经基于示例创建了一个新服务,并在global.asax文件中引用它,所以我可以浏览它。

我的问题是我在xml而不是json中得到了结果。这是我的服务代码

  [ServiceContract]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
[ServiceBehavior(InstanceContextMode = InstanceContextMode.PerCall)]
// NOTE: If the service is renamed, remember to update the global.asax.cs file
public class CheckIfValid
{
    [OperationContract]
    [WebGet(UriTemplate = "/{id}/details.json",
            ResponseFormat = WebMessageFormat.Json)]
    public SampleItem Get(string id)
    {
        // TODO: Return the instance of SampleItem with the given id
        //throw new NotImplementedException();
        if(id=="123")
        return new SampleItem { Id = 1, StringValue = "Got it" };
        else
            return new SampleItem { Id = 2, StringValue = "Not valid fool..." };
    }
}

非常基本,但我只想试着理解它。返回的结果如下所示

<SampleItem xmlns="http://schemas.datacontract.org/2004/07/WcfRestService1" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"><Id>1</Id><StringValue>Got it</StringValue></SampleItem>

我已尝试浏览服务中的帮助部分,但json示例没有做任何事情。

有人可以建议我应该做的不同吗?

1 个答案:

答案 0 :(得分:0)

您是否尝试通过Fiddler而不是使用网络浏览器发出请求?许多浏览器不会呈现他们获得的任何JSON。