2
我正在使用wcf Web服務作爲backbone.js應用程序的持久層。如何覆蓋wcf服務合同中的方法以允許使用不同的Web方法?
[OperationContract]
[WebGet]
public IEnumerable<AnalysisParameterSet> AnalysisParameters()
{
// implementation
}
[OperationContract]
[WebInvoke(Method = "POST")]
public void AnalysisParameters(IEnumerable<AnalysisParameterSet> parameterSets)
{
// implementation
}
我想在服務上創建兩個同名的方法,但簽名不同,一個用於GET,另一個用於POST。
然而wcf抱怨有兩種方法具有相同的名稱。我知道我可以使用OperationContract的name屬性來區分它們。這並不理想,因爲骨幹喜歡用於共享相同名稱的方法。
我可以在GET和POST中使用相同的方法名嗎?
如果我不能在WCF中做到這一點。我將如何修改backbone.js,爲post和Get使用不同的方法。
WCF確實不支持重載僅僅因簽名而不同的方法。您必須創建兩個不同名稱的獨特方法。 – 2013-04-04 04:55:32
「*這不太理想,因爲骨幹更喜歡共享相同名稱的方法。*」您能否詳細說明?由於我不知道WCF,你的服務器呼叫是如何路由的? (服務器如何知道要執行的功能/方法?) – Loamhoof 2013-04-04 08:49:45