没有刷新角度js中的数据

时间:2017-02-12 14:20:36

标签: c# angularjs asp.net-mvc entity-framework

我在mvc框架中用angular js写了一个web。

我的申请是:

var app = angular.module("AngularApp", []);

我的控制器是:

app.controller("EmpCtrl", function ($scope, EmployeeService) {
GetAllEmployee();
function GetAllEmployee() {

    var getAllEmployee = EmployeeService.getEmployee();
    getAllEmployee.then(function (emp) {
        $scope.employees = emp.data;

    }, function () {
        alert('data not found');
    });
}


$scope.deleteEmployee = function (id) {
    var getData = EmployeeService.DeleteEmp(id);
    getData.then(function (msg) {
        GetAllEmployee();
        alert('Employee Deleted...');
        $scope.h1message = true;
        $scope.message = "ED";
    }, function () {
        $scope.h1message = true;
        $scope.message = "Error in Deleting Record";
    });
}
});

我的服务是:

app.service("EmployeeService", function ($http) {
this.getEmployee = function () {
    debugger;
    return $http.get("/EmployeeModels/GetAllEmployee");
};

//Delete Employee
this.DeleteEmp = function (employeeId) {
    var response = $http({
        method: "post",
        url: "/EmployeeModels/deleteEmployee",
        params: {
            employeeId: JSON.stringify(employeeId)
        }
    });
    return response;
}

});

我的mvc行动是:

private ApplicationDbContext db = new ApplicationDbContext();

    public JsonResult GetAllEmployee()
    {
        using (ApplicationDbContext db = new ApplicationDbContext())
        {
            var employeeList = db.EmployeeModels.ToList();
            return Json(employeeList, JsonRequestBehavior.AllowGet);
        }
    }

    //DeleteEmployee
    public string DeleteEmployee(string employeeId)
    {
        if (employeeId != null)
        {
            int no = Convert.ToInt32(employeeId);
            var employeeList = db.EmployeeModels.Find(no);
            db.EmployeeModels.Remove(employeeList);
            db.SaveChanges();
            return "Employee Deleted";
        }
        else { return "Invalid Employee"; }
    }

和html文件是:

<div ng-app="AngularApp" ng-init="name='hn';backGroundColor='red';
 person={firstname:'jo',lastname:'hary'}">
<div ng-controller="EmpCtrl">
    <table border="1" width="100%">
        <tr>
            <th ng-click="orderByMe('emp.EmployeeId')">employee id</th>
            <th ng-click="orderByMe('Address')">addres</th>
            <th ng-click="orderByMe('EmailId')">email id</th>
            <th ng-click="orderByMe('EmployeeName')">employee name</th>
        </tr>
        <tr ng-repeat="emp in employees|orderBy:orderByMe">
            <td> {{emp.EmployeeId}}</td>
            <td> {{emp.Address}}</td>
            <td>{{emp.EmailId}}</td>
            <td>{{emp.EmployeeName}}</td>
            <td><a data-ng-click="deleteEmployee(emp.EmployeeId)" style="cursor:pointer;">delete</a></td>
        </tr>
    </table>
</div>

数据视图没问题。但是当我将记录添加到数据库表时,查看不刷新数据?

1 个答案:

答案 0 :(得分:0)

您的视图不刷新数据,因为您的方法GetAllEmployee()在页面加载时被调用一次。你需要刷新页面。