Опубликовать (используя выборку) список объектов внутри общего объекта JSX в ASP.Net Core API

#c# #reactjs #asp.net-core #asp.net-web-api #arraylist

#c# #reactjs #asp.net-core #asp.net-web-api #arraylist

Вопрос:

Я использую ReactJS и ASP.Net Web API

Это модель:

   public class Skill
{
  public int Id { get; set; }
  public string Description { get; set; }
}

public class RegisterProject
{
  public class Request
  {
    public string Objective { get; set; }
    public string Description { get; set; }
    public long UserId { get; set; }
    public int CurrencyId { get; set; }
    public int BudgetId { get; set; }

    public List<Skill> Skills = new List<Skill>();
  }

  public class Response : Models.Common.Generic
  

Контроллер:

    [HttpPost]
    [Route("[action]")]
    [EnableCors("AllowAllOrigin")]
    public ActionResult<Models.Main.RegisterProject.Response> postRegisterProject([FromBody] Models.Main.RegisterProject.Request registerProjectRequest)
  

В React JS

const Обрабатывает submit = (e) => { console.log(formPublishProject);

 fetch(global.config.url   "Project/postRegisterProject/", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
    Accept: "application/json",
  },
  body: JSON.stringify({
    Objective: "a",
    Description: "b",
    UserId: 1,
    CurrencyId: 1,
    BudgetId: 1,
    Skills: [
      { Id: 1, Description: "ReactJS" },
      { Id: 2, Description: "Html" },
    ],
  }),
})
  .then(function (response) {
    response.json().then(function (data) {
      console.log("llego aqui");
      console.log(data);
    });
  })
  .catch(function (err) {
    console.log("Fetch Error :-S", err);
  });
  

};

В контроллере, отладочном изображении ниже, я не получаю список навыков, я не знаю, неверно ли мое определение навыков или есть другая проблема?

DebugController

Комментарии:

1. «общедоступный список<Skill> Skills { get; set; }», я полагаю, должно подойти

Ответ №1:

Пожалуйста, измените навыки следующим образом

 public List<Skill> Skills { get; set; }