Он должен представлять из себя класс с такими же свойствами, какие вы отправляете, и нужно добавить аттрибут [FromBody]:
public class Word
{
public string A { get; set; }
public string B { get; set; }
}
[HttpPost]
public void Add([FromBody]Word word)
{
}
Отправить объект посложнее:
$.post("/Home/Add" , {"A": { "Prop" : 1 } , "B":"b"});
public class TestClass
{
public int Prop { get; set; }
}
public class Word
{
public TestClass A{ get; set; }
public string B { get; set; }
}
[HttpPost]
public void Add([FromBody]Word word)
{
}
Массив:
$.post("/Home/Add" , [ { "A" : "a" } , { "A" : "b" } ]);
public class Word
{
public string A{ get; set; }
}
[HttpPost]
public void Add([FromBody]IEnumerable<Word> words)
{
}
Использовать различные от имени свойств наименования:
$.post("/Home/Add" , [ { "OtherName" : "a" } , { "OtherName" : "b" } ]);
public class Word
{
[JsonProperty("OtherName")]
public string A{ get; set; }
}
[HttpPost]
public void Add([FromBody]IEnumerable<Word> words)
{
}