2015-01-07 89 views
1

我有一個webapi方法作爲httppost,如下所示。我正在嘗試使用 fiddler發出請求,但我無法獲得參數對象。如果我按圖中所示發送請求,則爲空。我究竟做錯了什麼?webapi httppost發送參數作爲對象

[ActionName("getCustomerByName")] 
    [HttpPost] 
    public async Task<List<Customer>> GetcustomerByName(object param) 
    { 

    } 

enter image description here

回答

1

你期望object param是?

請求主體JSON字符串是否代表Customer

如果是,請Customer的類型,而不是object

public async Task<List<Customer>> GetCustomerByName(Customer param) 

如果沒有然後用相同的字段名稱爲您傳遞JSON字符串定義一個類(任何名稱)和使用類代替object例如

public class QueryArgs 
{ 
    public int Id { get; set; } 
    // rest of your fields go here 
} 

public async Task<List<Customer>> GetCustomerByName(QueryArgs param) 
+0

實際原因我使用它有客戶對象本身不具有的不同屬性。但我的問題是一個愚蠢的錯字。我剛剛發現我寫的是內容類型而不是內容類型。它正常工作,當我糾正它。 :) – batmaci

+1

@batmaci足夠公平,但它更清晰地在你的API上有明確定義的類,而不是使用'object' – wal

相關問題