1
我有簽名Web服務:如何將可選參數發送到c#中的「webservice」?
[WebMethod(EnableSession = true)]
public Box FetchBox(string boxId, string p1, string p2, string p3)
我調用這個Web服務的jQuery的AJAX:
$.ajax({
url: "/WS/Ajaxify.asmx/FetchBox",
data: "{ 'boxId': '" + boxId + "' }",
dataType: "json",
type: "POST",
contentType: "application/json; charset=utf-8"
});
我想打電話給FetchBox一次只與P1,後來與P2但不p1等。
在許多情況下,我需要調用與任何p1或p2或p3或... 參數的FetchBox方法。我不想發送所有參數,因爲系統是基於插件的,插件不知道其他參數。
c#4中的可選參數不適用於Web服務。
也params string []參數不適合在這裏,因爲我需要知道參數名稱。
爲什麼你需要知道參數名稱? p1,p2或p3是什麼意思? – BrokenGlass 2012-02-26 04:51:52
我需要知道參數名稱及其值才能做出決定。 – ehsan 2012-02-26 04:53:15
你還沒有回答這個問題 - 背後有什麼邏輯? – BrokenGlass 2012-02-26 04:54:32