0

如何傳遞超過10個參數查詢字符串的一部分,我的asp.net網頁API 2.如何查詢字符串參數傳遞給asp.net網頁API 2

這是我的asp.net網頁API 2方法,我無法弄清楚,我怎麼能裝點這個方法,讓它接受ID和一個複雜的類型,是CustomerRequest,我想使用網址類似

http://localhost/api/Customer/?Mobile0012565987&Email=abcxyz.com&IsEmailVerified=true

[ResponseType(typeof(Customer))] 
public IHttpActionResult GetCustomer(long id, [FromUri]CustomerRequest request) 
     { 
      var customer = db.Customers.Find(request.CustomerId); 

      if (customer == null) 
      { 
       return NotFound(); 
      } 

      return Ok(customer); 
     } 

這是

public class CustomerRequest 
    { 
     public string Mobile { get; set; } 
     public string Email { get; set; }   
     public Nullable<bool> IsEmailVerified { get; set; }  
    } 

否則pleaase指導我,如果有更好的方式來做到這一點CustomerRequest類。

感謝

+0

你能告訴你的路由表? –

回答

0

基於您的代碼,你需要通過「ID」,以及像這樣:

http://localhost/api/Customer/?id=12345&Mobile=0012565987&Email=abcxyz.com&IsEmailVerified=true

,如果你想「身份證」可選的,你可以讓你的方法簽名是這樣的:

public IHttpActionResult GetCustomer([FromUri]CustomerRequest request, long id = 0) 

這將默認設置ID爲0,如果你不通過它的URL。所以,你將能夠訪問您的網址就像你本來是:

http://localhost/api/Customer/?Mobile=0012565987&Email=abcxyz.com&IsEmailVerified=true

+0

謝謝阿里,它工作 – Shax

相關問題