Как отправить объект, содержащий список строк от AngularJS до ASP. NET MVC Controller? - PullRequest
0 голосов
/ 09 мая 2020

У меня есть следующий объект javascript:

var param = {
  FilePaths: ['String1', 'String2', 'String3'],
  Share: false
}

My AngularJS POST следующий:

$http({
  method: 'POST',
  url: config.apiUrl + '/ImportSubset/Import',
  data: param,
  headers: {
    'Content-Type': 'application/json'
  }
}).then(function (response) {
  console.log(response);
}, function (error) {
  console.log(error);
});

My ASP. NET Контроллер:

public class ImportSubsetController : Controller
{
  public class ImportParam
  {
    public List<string> FilePaths;
    public bool Share;
  }

  public JsonResult Import(ImportParam param)
  {
    (...)
  }

Когда я вызываю свой Import API, свойство Share проходит нормально, но FilePaths равно Null. Что я здесь делаю не так? Я пробовал с data: JSON.stringify(param), но все равно проходит как Null.

1 Ответ

0 голосов
/ 09 мая 2020

1. Добавьте ниже класс FilePaths-

public class FilePaths
  {
    public List<string> Path { get; set; }

  }

2. Упоминание FilePaths как свойство в классе ImportParam -

public class ImportParam
  {
    public FilePaths filePaths { get; set; }
    public bool Share { get; set; }
  }

3. Украсьте свой json, как показано ниже, и назначьте это переменной param -

{
  {"ImportParam":{

 "filePaths":{"Path":["String1","String2","String3"]},

  "Share": false}}
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...