我一直在爲這個問題煩惱,而我無法發現問題。 我對WCF服務沒有太多的經驗,所以我希望這可能是我錯過的簡單東西。將數據發佈到來自JQuery的WCF OData服務
我已經建立了這個WCF OData服務暴露我們的實體模型,像這樣:
public static void InitializeService(DataServiceConfiguration config)
{
config.SetEntitySetAccessRule("*", EntitySetRights.All);
config.SetServiceOperationAccessRule("*", ServiceOperationRights.All);
config.DataServiceBehavior.MaxProtocolVersion = DataServiceProtocolVersion.V2;
}
現在我已經訪問使用jQuery的數據沒有問題,但一旦我更新JSONP對象我抓取,然後把它放回服務來更新數據庫,我找回了一個HTTP 501代碼(未實現)。
下面是我寫的把對象返回給服務的代碼:
function commitData() {
$.ajax({
url: 'http://localhost:7634/API/Service.svc/tbl_bericht_vertalingen/?$format=json&Authorization=' + userGuid,
contentType: 'application/json',
type: 'PUT',
data: jsonObject,
dataType: 'json',
error: function() { alert("oops!"); },
success: updateCallback
});
}
function updateCallback(result) {
var record = result["d"];
alert("Updated on record with ID " + record.Id);
}
的JSONObject的是我從服務較早,一些更新的屬性獲得相同的對象。
如前所述,調用這一點jQuery會導致我從服務中取回'501 - 未實現'。
任何幫助將不勝感激。
當你回來從WCF數據服務的錯誤代碼,可以考慮使用在[this]中的步驟(http://blogs.msdn.com/b/phaniraj/archive/2008/06/18/debugging-ado-net-data-services.aspx)博客文章,以獲得更多關於發生了什麼的上下文。 –