2016-02-16 6 views
0

Я реализовал веб-метод для получения одной записи. Веб-метод работает правильно, но. данные не отображаются в JQuery AJAXОшибка ответа jQuery при извлечении данных с использованием веб-метода

JQuery & Ajax код

function GetBillDetail() { 
       debugger; 
       var ClientId = jQuery('#<%=HiddenFieldCompanyId.ClientID%>').val() 
       $.ajax({ 
        type: "POST", 
        url: "<%=mstr_WebsitePath%>webservice/ClientSearch.asmx/GetBillDetaill", 
        data: '{ClientId: "' + ClientId + '" }', 
        contentType: "application/json; charset=utf-8", 
        dataType: "json", 
        success: function (r) {// Data Not Getting Here 
         debugger; 
         var billReport = r.d; 
          jQuery('#ClientName').html(billReport.ClientName); 
          jQuery('#CityName').html(billReport.City); 
          jQuery('#ClientAddress').html(billReport.Address); 
          jQuery('#ClientPhoneNo').html(billReport.PhoneNo); 
        }, 
        failure: function (r) { 
         alert(r.d); 
        } 
       }); 
      } 

Web Метод:

<WebMethod()> _ 
    Public Function GetBillDetaill(ByVal ClientId As String) As List(Of BillReport) 
     Dim billReportList As New List(Of BillReport) 
     Dim mrow_Bill As DataRow 
     With BillingDetailBOL.getBillCorrectionDetailBOL(ClientId) 
      For Each mrow_Bill In .Rows 
       Dim billReport As New BillReport() 
       billReport.ClientName = mrow_Bill("ClientName").ToString() 
       billReport.City = mrow_Bill("LocalityName").ToString() 
       billReport.Address = mrow_Bill("Address").ToString() 
       billReport.PhoneNo = mrow_Bill("Phone").ToString() 
       billReportList.Add(billReport) 
      Next 
     End With 

     Return billReportList 
    End Function 

BOL Способ вызова по веб-метод

Public Shared Function getBillCorrectionDetailBOL(ByVal ClientId As String) As DataTable 
     Try 
      _ILog.WriteToLog("", Severity.Information, "BillingDetailBOL.vb", "getBillCorrectionDetailBOL", "Get Client bill Detail", Level.INFO) 
      Dim mobj_dset As New DataSet 

      Return BillingDetailDAL.GetBillCorrectionDetailDAL(ClientId).Tables(0) 
     Catch piEx As PIException 
      _ILog.LogException("", Severity.ProcessingError, "BillingDetailBOL.vb", "getBillCorrectionDetailBOL", piEx) 
      Throw piEx 
     Catch ex As Exception 
      _ILog.LogException("", Severity.ProcessingError, "BillingDetailBOL.vb", "getBillCorrectionDetailBOL", ex) 
      Throw ex 
     End Try 
    End Function 

метод DAL вызова по BOL

Public Shared Function GetBillCorrectionDetailDAL(ByVal mstr_ClientId As String) As DataSet 
     Try 
      _ILog.WriteToLog("", Severity.Information, "BillingDetailDAL.vb", "GetBillCorrectionDetailDAL", "Get Client Detail", Level.INFO) 
      Dim commandparameters() As SqlParameter = New SqlParameter(0) {} 
      commandparameters(0) = New SqlParameter("@ClientId", mstr_ClientId) 

      Return SqlHelper.ExecuteDataset(Utilities.WebConfiguration.SQLConnectionString, CommandType.StoredProcedure, "GC_GetCompanyDetail", commandparameters) 
     Catch piEx As PIException 
      _ILog.LogException("", Severity.ProcessingError, "BillingDetailDAL.vb", "GetBillCorrectionDetailDAL", piEx) 
      Throw piEx 
     Catch ex As Exception 
      _ILog.LogException("", Severity.ProcessingError, "BillingDetailDAL.vb", "GetBillCorrectionDetailDAL", ex) 
      Throw ex 
     End Try 
    End Function 

Я не получаю данные на success: function (r) Кто-нибудь знает, как я могу решить эту проблему.

ответ

0

You WebMethod должны быть static в случае VB.Net должно быть Shared

Public Shared Function GetBillDetaill(ByVal ClientId As String) As List(Of BillReport) 
+0

Здравствуйте @Mairaj, я использую ур код, но он дает мне ошибку 500 .. не работает – Aman

+0

Может у смотрите ваш браузер консоли> – Mairaj

0

Попытка вернуть данные в строку формата JSON.

Сериализуйте список данных для json и измените тип возвращаемого значения функции на строку.

+0

Здравствуйте @Sumit, я использовал сериализации 'Dim JS As New JavaScriptSerializer() Context.Response.Write (js.Serialize (billReportList)), но он тоже не работает – Aman

+0

Какую ошибку вы получаете на стороне клиента? –

+0

Curser переходит в неисправную часть: неисправность: функция (r) { alert (r.d); } ' – Aman

 Смежные вопросы

  • Нет связанных вопросов^_^