我想從使用Web服務的URL中提取一個id號,以便它可以用作選擇語句中的where子句的參數根據記錄的ID號碼從數據庫中產生數據。然後,這些數據將被傳回到頁面,以填充jQuery模式彈窗窗口中的元素。如何從.Net 4.0中的Web服務獲取路由數據值
一切工作正常與靜態身份證號碼(例如:string postid = "120"
),但我不知道如何從URL中獲取ID號碼。我在.Net 4中使用路由,訪問頁面路由的方法在Web服務中不起作用。在網頁我做的東西一樣var id = RouteData.Values["id"];
,並且得到了ID,但是當我在一個Web服務做到了我得到了一個錯誤:
CS0120: An object reference is required for the non-static field, method, or property
'System.Web.Routing.RouteData.Values.get'
摘要:
我已經Web服務訪問形式的詳細信息頁面我想在獲取請求的頁面上獲得RouteData
。我想盡可能簡單地在頁面上使用RouteData.Values
,這與現在已過時的Request.Querystring
一樣簡單。
現在我更困惑,因爲雖然我可以很容易地添加新的路由爲Web服務,我不知道我會打電話,使用,因爲webservice.asmx /語法的WebMethod jQuery的阿賈克斯做。
現在我的URL:「../webservices/googlemaps.asmx/GetGoogleMap」在我的jQuery Ajax中,但這不是一個真正的URL。它只存在於某處的jQuery中,使用JavaScript調用服務的方式也不是真正的URL,它的webservice.webmethod()
在這種情況下將是googlemaps.GetGoogleMap()
。
我會嘗試註冊webservices/googlemaps.asmx/GetGoogleMap/postid
的路由,但我懷疑它會工作,因爲GetGoogleMap
不是目錄或querystring
。
你有沒有控制的web服務?你能提供一些服務的例子,以及他們的聲明嗎? –
要正確設置您的代碼格式:選擇代碼中的*每行*,然後按工具欄上的'ctrl-K'或'{}'按鈕 –