Ответы пользователя по тегу ASP.NET
  • Какой должен быть принимающий тип в контролеере?

    @ivanresh
    Он должен представлять из себя класс с такими же свойствами, какие вы отправляете, и нужно добавить аттрибут [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)
    {
    
    }
    Ответ написан
    Комментировать