Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 不刷新angular js中的数据_C#_Angularjs_Asp.net Mvc_Entity Framework - Fatal编程技术网

C# 不刷新angular js中的数据

C# 不刷新angular js中的数据,c#,angularjs,asp.net-mvc,entity-framework,C#,Angularjs,Asp.net Mvc,Entity Framework,我用AngularJS在mvc框架中编写了一个web 我的申请是: var app = angular.module("AngularApp", []); 我的控制器是: app.controller("EmpCtrl", function ($scope, EmployeeService) { GetAllEmployee(); function GetAllEmployee() { var getAllEmployee = EmployeeService.getEmployee(

我用AngularJS在mvc框架中编写了一个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>

员工id
地址
电子邮件id
员工姓名
{{emp.EmployeeId}
{{emp.Address}
{{emp.EmailId}
{{emp.EmployeeName}
删除

数据视图正常。但当我将记录添加到数据库的表中时,查看不刷新数据?

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

您需要调用api以更新最新的数据方式和调用api的位置?在按钮上单击What is instruction?我将删除操作添加到上述代码中。我添加了“GetAllEmployee();”来删除方法。但当我删除一条记录时,视图不会更新。请再次检查代码。当我刷新页面时,数据是更新的,但当记录是删除时,视图是更新的。我在delete函数中添加了GetAllEmployee(),但没有刷新数据。在delete函数中,您可以删除employees中删除的emp,或者再次调用数据库以获取新的员工列表