Search code examples
angularangularjsangular-ui-routerasp.net-core-webapiangular2-routing

Routing the data from EF .NET Core 6 to Angular


I'm trying to get data from my ASP.NET Core 6 back-end to Angular and I run into a problem:

Error: NG0900: Error trying to diff '[object Object]'. Only arrays and iterables are allowed

export class EmployeesListComponent {

  employees: Employee[] = [];

  constructor(private employeesService: EmployeesService) {}

  ngOnInit() : void {
      this.employeesService.getAllEmployee()
          .subscribe ({
               next: (employees) => {
                   console.log(employees);
                   this.employees = employees;
               },
               error: (response) => {
                   console.log(response);
               }
          });
    }
}

enter image description here

I use console.log to see the data and it exists

<div class="content my-5">
    <h1 class = "mb-3"> Employees </h1>
    <table class="table" >
        <thead>
            <tr>
                <th>id</th>
                <th>FirstName </th>
                <th>LastName</th>
                <th>DateOfBirth </th>
            </tr>
        </thead>
        <tbody>
            <tr *ngFor="let employee of employees" >
                <td>{{employee.Id }}</td>
                <td>{{employee.FirstName}}</td>
                <td>{{employee.LastName}}</td>
                <td>{{employee.DateOfBirth}}</td>
            </tr>
        </tbody>
    </table>
</div>

Solution

  • I solve it

    
    
      employees: Employee[] = [];
    
      constructor(private employeesService: EmployeesService) {}
      ngOnInit():void{
    this.employeesService.getAllEmployee()
    .subscribe ({
    next: (employees:any) =>{
     console.log(employees?.data);
    
    this.employees = employees['data'];