2012-03-25 129 views
2

有沒有一種方法可以使用GET將值數組傳遞給WCF WEB API服務?我想提出以下調用我的服務:如何將Uri中的數組傳遞給WCF WEB API服務?

http://localhost/myservice.com/projects/workspaceUsers?token=A3AD62998A7A463A9AD23D8F2937C92220120325072846&workspaceId=208&workspaceId=209 

我的Web服務功能是這樣的:

[WebGet(UriTemplate = "workspaceUsers?token={token}&workspaceId={workspaceId}")] 
    public HttpResponseMessage<IEnumerable<WorkspaceUserReadOnlyChildData>> FetchWorkspaceUserList(string token, int workspaceId) 

的想法是隻是改變INT workspaceId爲int [] workspaceId,但導致以下錯誤:

The service operation 'FetchWorkspaceUserList' will never receive a value for the input parameter 'workspaceId' of type 'Int32[]'. Ensure that a request HttpOperationHandler has an output parameter with a type assignable to 'Int32[]'. 

有沒有辦法做到這一點,而不需要像使用POST傳遞條件對象?

感謝您的幫助!

+0

爲什麼不嘗試逗號分隔值,而不是int數組。如果你使用ASP.Net MVC或新的Web API,你可以使用ModelBinders – Chandermani 2012-03-26 05:50:34

回答

1

我認爲最簡單的事情就是更新到ASP.NET 4 WEB API。由於它採用標準控制器架構,因此您可以輕鬆傳入數組。

+0

我發現這也是最好的解決方案。 – mattruma 2012-03-26 13:39:25

相關問題