WCF返回JSON的详细配置


开发环境:VS2008,c#

1.新建个WCF服务网站

文件-新建-网站-WCF服务

2,运行一下,提示配置WEB.CONFIG,点击确认.

3,打开web.config增加如下节点:

<serviceHostingEnvironment aspNetCompatibilityEnabled="true">
  </serviceHostingEnvironment>

 endpoint 中增加 behaviorConfiguration="webBehavior"

<endpointBehaviors>
    <behavior name="webBehavior">
     <webHttp/>
    </behavior>
   </endpointBehaviors>

处理完以上3处之后,web.config就OK了.

4,IService.cs 增加:

[OperationContract]
    [WebInvoke(Method = "GET", ResponseFormat = WebMessageFormat.Json)]
    List<CompositeType> Test();

Service.cs 增加:

public List<CompositeType> Test()
    {
        List<CompositeType> lst = new List<CompositeType>();
        CompositeType type = new CompositeType();
        type.BoolValue = true;
        type.StringValue = "22";
        lst.Add(type);
        CompositeType type2 = new CompositeType();
        type2.BoolValue = false;
        type2.StringValue = "33";
        lst.Add(type2);
        return lst;
    }

CompositeType类:

[DataContract]

public class CompositeType

{     bool boolValue = true;     string stringValue = "Hello ";

    [DataMember]    

public bool BoolValue     {         get { return boolValue; }         set { boolValue = value; }     }

    [DataMember]    

public string StringValue     {         get { return stringValue; }         set { stringValue = value; }     }

}

5,Service.cs 增加

[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]

6,运行测试,如:

http://localhost:1177/WCFData/Service.svc

手动输入:http://localhost:1177/WCFData/Service.svc/Test

返回:[{"BoolValue":true,"StringValue":"22"},{"BoolValue":false,"StringValue":"33"}]

测试成功!


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM