2011-07-07 107 views
1

Flexigrid呼叫到達Web方法我實現了followig Web方法(文件Notes.asmx):不能從aspx頁面

[WebMethod(EnableSession = true)] 
    [ScriptMethod(ResponseFormat = ResponseFormat.Json)] 
    public object getNotesData() 
    { 

     Guid contactId = new Guid("dc53b9a3-bde1-4810-88dd-3db2581f29b8"); 

     var data = BusinessObjectFactory.GetContactNotes(contactId); 
     string serialized = new JavaScriptSerializer().Serialize(data); 

     return serialized; 
    } 

的方法簡單地返回提到了接觸一些數據。 我分別測試了這個方法,它正確地返回記錄。

在我用下面的Flexigrid語法來調用這個Web方法用於檢索數據的aspx頁面:

$(function() 
     { 
      $("#flex1").flexigrid(
      { 
      url: 'WebService/Notes.asmx/getNotesData', 
      dataType: 'json', 
      colModel : [ 
      { display: 'NOTEID', name: 'NOTEID', width: 40, sortable: true, align: 'left' }, 
      { display: 'Title', name: 'Title', width: 150, sortable: true, align: 'left' } 
      ], 
      sortname: "Title", 
      sortorder: "asc", 
      usepager: true, 
      title: "Notes_TITLE", 
      useRp: true, 
      rp: 10, 
      showTableToggleBtn: false, 
      resizable: false, 
      width: 500, 
      height: 370, 
      singleSelect: true 
      } 
      ); 
     }); 

但調試我看到了從服務器永遠不會從flexigrid呼叫到達的代碼。在瀏覽器中,aspx頁面在Flexigrid UI中有一個「連接錯誤」。

我使用其他Web方法與Ajax/Json和jQuery調用,他們工作正常。這不是一個錯誤的路徑,因爲aspx文件保存在同一臺服務器上,並且位於包含Web服務的目錄(名爲WebService的文件夾)之上的目錄中。

任何建議爲什麼我無法使用Flexigrid sintax訪問服務器?

回答

0

您確定Web服務的路徑是WebService/Notes.asmx/getNotesData嗎? 看着螢火蟲,它可能是錯誤的網址

+0

該路徑是正確的,因爲我測試從後面的代碼(保持相同的路徑),它的工作原理,因此我woulkd排除一個錯誤的URL問題。 我在一個內部網中工作,其中IE是唯一使用的瀏覽器(並且可用),因此我無法直接使用Firebug。我會嘗試使用Fiddler或類似的程序來獲取連接問題所在。 – Francesco