C# C JSON自定义结果列表名称
如何将C的JSON响应从结果覆盖到类名 它总是返回methodname+结果。有没有办法把它改成类名 还是我的代码有问题 这是我的交换理由课C# C JSON自定义结果列表名称,c#,json,wcf,C#,Json,Wcf,如何将C的JSON响应从结果覆盖到类名 它总是返回methodname+结果。有没有办法把它改成类名 还是我的代码有问题 这是我的交换理由课 [DataContract] public class Exchange_Reason { [DataMember] public string Exchange_Reason_ID { get; set; } [DataMember] public string Reason { get; set; } [Da
[DataContract]
public class Exchange_Reason
{
[DataMember]
public string Exchange_Reason_ID { get; set; }
[DataMember]
public string Reason { get; set; }
[DataMember]
public string Status { get; set; }
}
我的服务合同
[OperationContract]
[WebInvoke(Method = "GET", ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Wrapped, UriTemplate = "getExchange_Reason_List")]
List<Exchange_Reason> GetExchange_Reason_List();
我需要它是:
{
Exchange_Reasons: [
{
Exchange_Reason_ID: "1000001",
Reason: "Rotten",
Status: "Active"
},
{
Exchange_Reason_ID: "1000002",
Reason: "Expired",
Status: "Active"
}
]
}
提前谢谢。这是因为您的车身是包好的。首先从WebInvoke中删除BodyStyle,然后按照您想要的方式包装输出。我想你想要这个:
[DataContract]
public class GetExchange_Reason_ListResult
{
[DataMember]
public Exchange_Reason[] Exchange_Reasons { get; set; }
}
public class Exchange_Reason
{
public string Exchange_Reason_ID { get; set; }
public string Reason { get; set; }
public string Status { get; set; }
}
您的方法应如下所示:
[OperationContract]
[WebInvoke(Method = "GET", ResponseFormat = WebMessageFormat.Json, UriTemplate = "getExchange_Reason_List")]
GetExchange_Reason_ListResult GetExchange_Reason_List();
[DataContract]
public class GetExchange_Reason_ListResult
{
[DataMember]
public Exchange_Reason[] Exchange_Reasons { get; set; }
}
public class Exchange_Reason
{
public string Exchange_Reason_ID { get; set; }
public string Reason { get; set; }
public string Status { get; set; }
}
[OperationContract]
[WebInvoke(Method = "GET", ResponseFormat = WebMessageFormat.Json, UriTemplate = "getExchange_Reason_List")]
GetExchange_Reason_ListResult GetExchange_Reason_List();