【问题标题】:WCF REST Format OutputWCF REST 格式输出
【发布时间】:2021-01-30 20:56:44
【问题描述】:

我有一个使用 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": 1,
      "Value": "test1"
    }
  ]
}

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

【问题讨论】:

    标签: wcf wcf-rest


    【解决方案1】:

    找到原因,我不得不将Data 类声明为[DataContract]

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-29
      • 1970-01-01
      • 1970-01-01
      • 2015-06-15
      • 1970-01-01
      相关资源
      最近更新 更多