WCF服务中的Json结果格式

时间:2015-03-18 20:18:18

标签: c# json wcf

好人下午,我有一个Json格式的输出,我需要保持与这里的图片完全一样,但它看起来像这样,我可以或我可以使它显示注册号作为每个的顶部导致?

格式需要

Format Need

实际格式

Actually Format

我通过Entity Framework 6获得结果;我制作[OperationContract]

中指定的格式
    [OperationContract]
    [WebInvoke(Method = "GET", 
     ResponseFormat = WebMessageFormat.Json, 
     BodyStyle = WebMessageBodyStyle.Wrapped, 
     UriTemplate = "getAllProduct/{value}")]
    [return: MessageParameter(Name = "Articulos")]        
    List<Product> GetAllProduct(string value);

感谢您的帮助

1 个答案:

答案 0 :(得分:1)

您可以使用Json.Net并返回对象Dictionary<int,Product>

来执行此操作
[OperationContract, WebGet(UriTemplate = "getAllProduct/{value}")]
public System.ServiceModel.Channels.Message GetAllProduct(string value)
{
    Dictionary<int, Product> dict = .......
    WebOperationContext.Current.OutgoingResponse.ContentType = "application/json";
    return WebOperationContext.Current.CreateTextResponse(
        JsonConvert.SerializeObject(dict)
    );
}