WCF REST格式输出

WCF REST格式输出,wcf,wcf-rest,Wcf,Wcf Rest,我有一个使用REST协议的WCF服务 代码: [ServiceContract] public interface IHybridService { [OperationContract] [WebInvoke(Method = "GET", UriTemplate = "/hybridservice/compositedata/{value}", ResponseFormat = WebMessageFormat.Json, Reque

我有一个使用REST协议的WCF服务

代码:

[ServiceContract]
public interface IHybridService
{

    [OperationContract]
    [WebInvoke(Method = "GET", UriTemplate = "/hybridservice/compositedata/{value}", ResponseFormat = WebMessageFormat.Json, RequestFormat = WebMessageFormat.Json,
        BodyStyle = WebMessageBodyStyle.Bare)]
    CompositeType GetDataUsingDataContract(string value);
}

[DataContract]
public class CompositeType
{
    List<Data> data = new List<Data>();

    public CompositeType()
    {
        data.Add(new Data() { Id= 1, Value = "test1" });
    }

    [DataMember]
    public List<Data> DataList
    {
        get { return data; }
        set { data = value; }
    }
}
public class Data
{
    [DataMember(Name = "DataID")]
    public int Id { get; set; }

    public string Value { get; set; }
}

如何将
DataList
中的
Id
更改为
DataID
?我尝试了
[DataMember(Name=“DataID”)]
,但不起作用。我不想将c#属性更改为
DataID
,以使其正常工作。

找到原因,我必须将
Data
类声明为
[DataContract]

{
  "DataList": [
    {
      "Id": 1,
      "Value": "test1"
    }
  ]
}