当前位置: 代码迷 >> Web Service >> wcf 接收List類型參數,UriTemplate怎寫?解决思路
  详细解决方案

wcf 接收List類型參數,UriTemplate怎寫?解决思路

热度:335   发布时间:2016-05-02 02:44:18.0
wcf 接收List類型參數,UriTemplate怎寫?
例如:
[OperationContract]
    [WebInvoke(Method = "POST",
     ResponseFormat = WebMessageFormat.Json,
     UriTemplate = "AddUsers/這裡怎填?")]
    void AddUsers(List<string> users);
------最佳解决方案--------------------
List<string> users 是Post的,在Request Body里。Uri里不需要。
------其他解决方案--------------------
引用:
List<string> users 是Post的,在Request Body里。Uri里不需要。


先謝謝大大,
這樣就ok了?
[OperationContract]
  [WebInvoke(Method = "POST",
  ResponseFormat = WebMessageFormat.Json,
  UriTemplate = "AddUsers")]
  void AddUsers(List<string> users);

那如果void AddUsers(List<string> users,string test,string test1);這樣呢?
------其他解决方案--------------------
引用:
引用:

List<string> users 是Post的,在Request Body里。Uri里不需要。


先謝謝大大,
這樣就ok了?
[OperationContract]
  [WebInvoke(Method = "POST",
  ResponseFormat = WebMessageFormat.Json,
  UriTemplate = ……


需要调整一下顺序,get 参数在前,post 在后
[UriTemplate="AddUsers/{test}/{test1})]
void AddUsers(string test, string test1, List<string> users);

不过这不符合Rest设计思想,有点蛋疼
------其他解决方案--------------------
引用:
引用:

引用:

List<string> users 是Post的,在Request Body里。Uri里不需要。


先謝謝大大,
這樣就ok了?
[OperationContract]
[WebInvoke(Method = "POST",
ResponseFormat = WebMessageFormat.Json,
UriT……

不是,我的意思是想post 2個參數,
例如void AddUsers(string List<string> product, List<string> users);
------其他解决方案--------------------
你的对象应该组合了。重新设计

void AddUsers(List<User> users);

每个users里有navigate property带着 products
------其他解决方案--------------------
引用:
你的对象应该组合了。重新设计

void AddUsers(List<User> users);

每个users里有navigate property带着 products

就是post只能post一個參數?
------其他解决方案--------------------
引用:
引用:

你的对象应该组合了。重新设计

void AddUsers(List<User> users);

每个users里有navigate property带着 products

就是post只能post一個參數?

是的。
------其他解决方案--------------------
[UriTemplate="AddUsers)]
void AddUsers(List<string> users);
請問在客戶端是如何post 上server的?
例如在客戶端請求http://localhost/userService.svc/AddUsers
但User的資料怎送過來server那邊?

------其他解决方案--------------------
修正:
[UriTemplate="AddUsers)]
void AddUsers(User user);
客戶端請求http://localhost/userService.svc/AddUsers
  相关解决方案