我嘗試下面的代碼:我可以在UriTemplate中使用對象嗎?
[OperationContract]
[WebInvoke(UriTemplate="/Users/Register/{user}")]
void Register(User user);
但是當我嘗試運行此,它告訴我UriTemplate只能包含字符串。如果我需要將一個對象傳遞給我的方法,就像在這種情況下一樣,將User對象傳遞給我的Register方法。
如果我改變WebInvoke屬性:
[WebInvoke(UriTemplate="/Users/Register/")]
當我嘗試瀏覽到http://localhost:8000/Users/Register例如
謝謝,你能詳細說明你的意思是部分POST請求嗎?我實際上嘗試過你之前提到過的,那就是在我的UriTemplate中有/ Users/Register,但是當我導航到http:// localhost:8000/Users/Register時,它說方法不被允許。 – Xaisoft 2010-09-17 22:22:22
當你說你「瀏覽」到URL時,你是什麼意思?你只是在瀏覽器中打開它?如果是這樣,那麼當您使用[WebInvoke]屬性(您需要使用[WebGet])時,會執行GET請求,這是不允許的。 [WebInvoke]是POST/PUT/DELETE(你會看到我指定「POST」)在我上面的代碼示例中。退房:http://www.pluralsight-training.net/microsoft/olt/howtovideos.aspx?category=WCF%20REST – 2010-09-17 22:48:17
哦,呃,你是對的。所有這些的基礎是,用戶將進入註冊頁面,填寫一些字段並註冊。註冊部分將由POST處理。我可以在點擊按鈕時處理它,對吧?但是什麼是阻止某人去http:// localhost:8000/Users/Register? – Xaisoft 2010-09-18 00:09:54