2017-07-27 19 views
0

我正在開發一個WCF應用程序,並且前端使用JSON來調用Web方法。WCF和Json致電

我有一個數據模型類,如下如下

[DataContract] 
    public class GL_AccMainTypeListItem 
    { 
    [DataMember] 
    public int accMainTypeyNo { get; set; } 
    [DataMember] 
    public string mainType { get; set; } 
    [DataMember] 
    public int startAccNo { get; set; } 
    [DataMember] 
    public int endAccNo { get; set; } 

    } 

我的Web方法,並返回上述對象列表。基本上在這裏我用存儲過程(這些工作得很好)

[OperationContract] 
[WebInvoke(Method = "GET", UriTemplate = "GetDataString/{value}", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json)] 
public List<GL_AccMainTypeListItem> GL_AccMainType_GetAll() 
{ 

     DataAccessService da = new DataAccessService("usp_GL_AccMainTypeGetAll"); 
     DataTable dt = da.ExecuteDataTable(); 


     var acc = (from row in dt.AsEnumerable() 
        select new GL_AccMainTypeListItem 
        { 
         accMainTypeyNo = Utility.ToInt(row["accMainTypeNo"]), 
         mainType = Utility.ToString(row["mainType"]), 
         startAccNo = Utility.ToInt(row["startAccNo"]), 
         endAccNo = Utility.ToInt(row["endAccNo"]) 

        }); 

     return acc.ToList(); 

} 

,並從數據庫中獲取的數據表,並返回到客戶端。我想知道如何使用JQuery在客戶端調用此Web服務,並逐行迭代結果集。

回答

0
 <script src="jquery-1.11.2.js"></script> 
     <script> 
      $(document).ready(function() { 
       $('#btnGetAccountList').click(function() {     
        $.ajax({ 
          //url will be yourclassname.svc/yourmethodname 
          url: 'namespaceofGL_AccMainType_GetAllmethod.svc/GL_AccMainType_GetAll', 
          method: 'Get', 
          contentType: "application/json;charset=utf-8",      
          success: function (data) { 
           //your account detail list will be here. 
          }, 
          error: function (err) { 
           alert(err); 
          } 
         }); 
        }); 
       }); 
      </script> 
0

您必須對該方法進行ajax調用。 如:

// Function to call WCF Service  
function CallService() { 
$.ajax({ 
    type: Type, //GET or POST or PUT or DELETE verb 
    url: Url, // Location of the service 
    data: Data, //Data sent to server 
    contentType: ContentType, // content type sent to server 
    dataType: DataType, //Expected data format from server 
    processdata: ProcessData, //True or False 
    success: function(msg) {//On Successfull service call 
     ServiceSucceeded(msg); 
    }, 
    error: ServiceFailed// When Service call fails 
}); 
}