2010-04-15 60 views
0

是否可以對在ADO.NET數據服務(使用WebInvoke裝飾)中定義的服務操作進行POST?將服務操作作爲HTTP GET調用沒有任何問題。但是,當我切換到POST時,堆棧跟蹤一直返回「參數不能爲NULL」。我使用下面的jQuery語法,並將POST作爲JSON發送(儘管我不包括$ .ajax調用,參數名稱完全一致)。可以使用WCF來嘗試這一點,而不是ADO.NET數據服務(新重命名爲WCF數據服務)。但是,我的首選是首先使用這種方法。我曾嘗試過這種方法,但沒有使用stringify方法。在線大多數示例僅顯示如何將POST用於實體(即用於處理CRUD操作)。但是,在這種情況下,我們正在發佈服務操作。在ADO.NET數據服務中執行POST服務操作

function PostToDataService() { 
    varType = "POST"; 
    varUrl = "http://dev-server/MyServices/MyService.svc/SampleSO"; 
    varData = { CustomMessage: $("#TextBox1").val() }; 
    varData = JSON.stringify(varData); 
    varContentType = "application/json; charset=utf-8"; 
    varDataType = "json"; 
    varProcessData = true; 
    CallService(); 
} 

回答