調用WCF不需要添加服務引用,使用一個WCFHelper類就可以

效果圖:

 

 

 

調用過程:

 string WCFURL = "http://localhost:100/Service1.svc";

            UserRequest user = new UserRequest { UserName = UserName.Text, Address = Address.Text, Email = Email.Text };

            string request = "{\"request\":" + new JavaScriptSerializer().Serialize(user) + "}";
            string returnContent = WCFHelper.SendHttpRequest(WCFURL, "GetUserInfo", request);

            UserResult re = new JavaScriptSerializer().Deserialize<UserResult>(returnContent);

            lblText.Text = re.Result;

 

WCF項目中配置文件節點配置: 

 1 <system.serviceModel>
 2     <behaviors>
 3       <endpointBehaviors>
 4         <behavior name="httpBehavior">
 5           <webHttp />
 6         </behavior>
 7       </endpointBehaviors>
 8       <serviceBehaviors>
 9         <behavior name="">
10           <serviceMetadata httpGetEnabled="true" />
11           <serviceDebug includeExceptionDetailInFaults="false" />
12         </behavior>
13       </serviceBehaviors>
14     </behaviors>
15     <services>
16       <service name="WCFServices.Service1">
17         <endpoint address=""
18                   behaviorConfiguration="httpBehavior"
19                   binding="webHttpBinding"
20                   contract="WCFServices.IService1" />
21       </service>
22     </services>
23   </system.serviceModel>
View Code

 

 

WCF項目請求接口:

 [ServiceContract]
    public interface IService1
    {
        [OperationContract]
        [WebInvoke(Method = "POST", UriTemplate = "GetUserInfo",
            BodyStyle = WebMessageBodyStyle.WrappedRequest, //包裝請求,但不包裝相應  注:如果設置爲包裝相應,返回的JSON結果會加一個 殼
            ResponseFormat = WebMessageFormat.Json,
            RequestFormat = WebMessageFormat.Json)]
        UserResult GetUserInfo(UserRequest request);
    }
View Code

 

 

WCF項目實現方法:

  public UserResult GetUserInfo(Model.UserRequest request)
        {
            return new UserResult { Result = request.UserName + "地址是:" + request.Address + ",郵箱是:" + request.Email };
        }
View Code

 

 

項目下載地址: http://download.csdn.net/detail/vincent_void/7676403

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章