Angular получает данные с сервера MVC

#javascript #angularjs #asp.net-mvc

#javascript #angularjs #asp.net-mvc

Вопрос:

Я пытаюсь получить данные с сервера.Функция Get Users имеет данные, и я пытаюсь передать их в AdminController.js . Что я делаю не так? Я получаю эту ошибку: TypeError: не удается прочитать свойство ‘post’ неопределенного

 namespace VTS.Controllers
{
    public class AdminController : Controller
    {
        public ActionResult Index()
        {
            return View();
        }

        [HttpPost]
        public JsonResult GetUsers()
        {
            JavaScriptSerializer jss = new JavaScriptSerializer();
            var jsonString = string.Empty;
            TributaryEntities db = new TributaryEntities();
            var listUsers = (from user in db.PSP_BatchOrderDriver select new   { ID = user.ID, Fname = user.FirstName, LastName = user.LastName }).ToList();
            string output = jss.Serialize(listUsers);
            var test = Json(jss.Serialize(output));
            return test;
        }
    }
}
  

AdminController.js файл

 'user strict';
myApp.controller('AdminController',

function AdminControllerl($timeout, $q, $log) 
{
    var self = this;

    self.simulateQuery = false;
    self.isDisabled = false;

    self.employees = loadAll();

    function loadAll($http)
    {
       var allEmployees = $http.post('Controllers/AdminController/GetUsers');
    }
}
  

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

1. попробуйте это var allEmployees = $http.post('Controllers/Admin/GetUsers');

2. какую ошибку вы получаете?

Ответ №1:

Попробуйте включить ‘$ http’ в аргументы контроллера

 'user strict';
myApp.controller('AdminController',

function AdminControllerl($timeout, $q, $log, $http) 
{
    var self = this;

    self.simulateQuery = false;
    self.isDisabled = false;

    self.employees = loadAll();

    function loadAll()
    {
       var allEmployees = $http.post('Controllers/AdminController/GetUsers');
    }
}
  

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

1. Спасибо, но я получаю ту же ошибку: ‘Не удается прочитать свойство ‘post’ неопределенного’

2. кроме того, удалите ‘$ http’ из определения функции загрузки

3. Спасибо. Это сработало, но теперь я не могу найти путь к ‘Controllers / AdminController / getUsers’

4. Я не уверен насчет контроллеров asp, но можете ли вы попробовать изменить URL на ‘Admin / getUsers’ вместо ‘Controllers / AdminController / getUsers’

5. Спасибо, у меня получилось, что это работает как «../Admin/ getUsers /»