У меня есть приложение Angular, которое вызывает метод c#mvc:
AngularJS:
var data = JSON.stringify({ 'panelists': $scope.arr, 'webId': $scope.webinarId });
//Call the services
$http.post('/Home/CreatePanelists', JSON.stringify(data))
.then(function (response) {
if (response.data)
$scope.msg = 'Post Data Submitted Successfully!';
}, function (response) {
$scope.msg = 'Service not Exists';
});
Содержание данных:
{"panelists":[{"name":"ali","email":"ali@email.com"},{"name":"tom","email":"tom@email.com"},{"name":"arthur","email":"arthur@email.com"}],"webId":94395753244}
Добавлены следующие файлы:
/ Models / Home / Panelist.cs
public class Panelist
{
public string name { get; set; }
public string email { get; set; }
}
/ Models / Home / Parameters. cs
public class Parameters
{
public IList<Panelist> panelists { get; set; }
public string webId { get; set; }
}
Обновлен контроллер:
/ Controllers / HomeController.cs:
public ActionResult CreatePanelists(Parameters data)
{
System.Diagnostics.Debug.WriteLine(data.webId);
System.Diagnostics.Debug.WriteLine(data.panelists);
return new EmptyResult();
}
К моменту, когда отладчик входит в метод CreatePanelists, Я добавил наблюдение за данными, и оба участника панели и webId равны нулю.
Я не понимаю, в чем проблема. Когда я отлаживаю код AngularJS в Chrome и перехожу к шагу, на котором выполняется почтовый запрос, я вижу, что переменные данные содержат массив объектов со значениями (как показано выше).
Почему метод MVC контроллера CreatePanelist не видит эти значения?
Если у кого-то есть идея и он не возражает ее предложить, это было бы неплохо.
Заранее благодарим вас за помощь.