jquery调用wcf案例

----------根据其他网友总结

1.在契约接口上添加:[WebInvoke(RequestFormat=WebMessageFormat.Json,ResponseFormat=WebMessageFormat.Json,BodyStyle=WebMessageBodyStyle.WrappedRequest)]

2.在实现契约的的服务上添加标记:[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]

3.配置文件:

<system.serviceModel>

           <services >

                     <service name="WebApplication1.guo" >

                     <endpoint address="" behaviorConfiguration="DiggServiceBehavior"  binding="webHttpBinding" contract="WebApplication1.Iguo" />

                     </service>

           </services>

    <behaviors>

      <serviceBehaviors>

        <behavior name="AllenBehavior">

          <serviceMetadata httpGetEnabled="true" />

          <serviceDebug includeExceptionDetailInFaults="false" />

                   </behavior>

      </serviceBehaviors>

      <endpointBehaviors>

                <behavior name="DiggServiceBehavior">

                     <enableWebScript/>

                 </behavior>

      </endpointBehaviors>

    </behaviors>

    <serviceHostingEnvironment multipleSiteBindingsEnabled="true" />

  </system.serviceModel>

4.调用:

<script type="text/javascript">

        function guo() {

            $.ajax({

                url: "guo.svc/Show",

                type: 'post',

                contentType: 'text/json',

                data: '{"str":"guozefeng"}',

                success: function (data) { alert(data.d); },

                error: function (data) { alert("error"); }

              });

        }

    </script>

-------需要注意的:

ry调用WCF的要点:

 

  1. [WebInvoke(RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.WrappedRequest)]

 

  2. [AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]

 

  3.  binding="webHttpBinding"

 

  4. <enableWebScript/>

 

  5.  contentType: 'text/json'

posted @ 2013-11-16 14:14  aiaito  阅读(216)  评论(0编辑  收藏  举报