2012-03-25 41 views
0

我正嘗試從集中模塊訪問頁面方法。在ASP.Net Web服務中引用頁面方法

  • 我試圖把它在一個母版頁沒有奏效

  • 我試圖把它在一個Web服務,並做了以下

    1. 添加其路徑的腳本管理器,它存在於母版頁

    2. 添加了對該項目的Web服務引用

    3. 配置的web.config文件的頁面方法

也沒有工作(不停地告訴我說: 「PageMethods沒有定義」 < - JavaScript錯誤)

  • 嘗試通過Javascript的http請求訪問頁面方法,得到服務器錯誤響應(500)

什麼是我錯過了?

+0

500服務器響應表明執行Web服務代碼時出現服務器端錯誤。嘗試在獲取http請求時調試Web服務。 – 2012-03-25 06:39:41

+0

我在函數的第一行放了一個斷點,但沒有達到它! – Hilmi 2012-03-25 06:41:22

回答

1

我跟着例如#2在這個環節,它工作得很好(樣品卻出現被打破):http://www.asp.net/Ajax/Documentation/Live/tutorials/ExposingWebServicesToAJAXTutorial.aspx

下面是我所採取的步驟: 1)創建一個基本的.asmx Web服務「 HelloWorld'方法 2)將屬性[ScriptService]添加到'HelloWorld'方法(以及要從頁面腳本調用的Web服務中的任何方法) 3)將ScriptManager添加到頁面,引用Web服務,並且包括InlineScript =「true」 4)如下所示從Javascript調用頁面:

ServiceNamespace.ServiceClass.Method(parameters, callback); 
function callback(result) 
{ 
    alert(result); 
} 

您收到500錯誤的事實告訴我,您的Web服務中存在錯誤。我會從這裏開始:你能成功地在瀏覽器中打開你的web服務的URL,並調用它的方法嗎?

+0

我的朋友,試着運行這個例子,有一個錯誤,說--Uncaught ReferenceError:樣本沒有被定義 - 樣本和PageMethods都沒有被定義,這就是我存放在... bwt,我做了所有提到的步驟... – Hilmi 2012-03-27 21:26:38

+0

哦哇,對不起的鏈接抱歉...我向你保證它曾經工作得很好。 :) – McGarnagle 2012-03-28 05:27:50

+0

我更新了我的答案,以包含更多細節,因爲示例已損壞。這個例子仍然準確,但它只是服務鏈接被破壞,所以它不會運行。 – McGarnagle 2012-03-28 05:42:34