2013-01-11 52 views
3

的發帖陣列我有一個像下方的類張貼到asp.net網頁API整數asp.net網頁API

public class PostData 
{ 

    public int ID { get; set; } 

    public int[] SelectedChoiceIDs { get; set; } 

} 

在我ApiController有一種方法叫發送它得到PostData對象作爲參數。

public bool Send(PostData data) 
{ 


} 

的問題是每當我追溯方法的Web API不綁定到整數數組,就是SelectedChoiceIDs財產。我如何強制將整數數組綁定到「SelectedChoiceIDs」屬性?

我送的數據是一樣

{ "ID" : 3 , "SelectedChoiceIDs" : [ 3,4,5,6 ] } 

回答

7

你不需要做任何事情,這可以開箱即用。

如果您發佈您提供的確切的對象:

{ "ID" : 3 , "SelectedChoiceIDs" : [ 3,4,5,6 ] } 

Content-Type: application/json,默認的模型綁定會自動把它撿起來。

public class PostData 
{ 

    public int ID { get; set; } 

    public int[] SelectedChoiceIDs { get; set; } 

} 

public void DummyController : ApiController 
{ 
    public void Post(PostData data) 
    { 
     //data here will be PostData with ID and an array of 4 integers 
    } 
} 

確保您提供Content-Type,而你確實張貼正確的JSON,而不是例如:

{data: { "ID" : 3 , "SelectedChoiceIDs" : [ 3,4,5,6 ] } } 
-3

ASP.NET MVC bind array in model

Here可能dupplicate是博文解釋,你必須做的事情。

+0

這就是MVC的答案,這裏的問題是網絡API –

+0

有ApiController在題。它也被標記爲「asp.net-mvc」。 – semao