我正在WCF 4.0中開發一些RESTful服務。我有一個方法如下:WCF中URITemplate中的可選查詢字符串參數?
[OperationContract]
[WebGet(UriTemplate = "Test?format=XML&records={records}", ResponseFormat=WebMessageFormat.Xml)]
public string TestXml(string records)
{
return "Hello XML";
}
所以,如果我定位我的瀏覽器http://localhost:8000/Service/Test?format=XML&records=10,然後一切正常exepcted。
但是,我希望能夠導航到http://localhost:8000/Service/Test?format=XML,並取消URL的「& records = 10」部分。但是現在,由於URI與預期的URI模板不匹配,我得到服務錯誤。
那麼如何實現我的一些查詢字符串參數的默認值?例如,如果該部分不在查詢字符串中,我想將「記錄」默認爲10。
您的默認值,以便看起來運行良好。但是,如果我嘗試針對此運行單元測試,它將不再起作用,因爲單元測試沒有WebOperationContext。我查了幾個例子,但沒有人有一個簡單的例子來說明如何模擬WebOperationContext? – Shafique 2010-06-07 21:33:23
嘗試使用Google搜索「模擬WebOperationContext」。關於如何做到這一點,有很多不同的想法。 – luksan 2010-06-07 23:45:37
給男人一個+1,他的解決方案有效!在這裏,我會開始。 – EdgarVerona 2010-07-02 15:57:28