Angular 6 не отображает данные, полученные из Asp Net Web API 2.2 - PullRequest
0 голосов
/ 01 ноября 2019

Краткое описание моей проблемы:

У меня установлено приложение Angular, и оно работает с Asp Net Core Web API 2.2. Как правило, в этом нет ничего сложного, в основном это приложение CRUD, проблема также не в ракетостроении для более продвинутых пользователей Angular, чем я.

Веб-API размещен на IIS с надлежащим подключением к базе данных. Это правильно, потому что примеры данных были помещены в БД, и они извлекаются, как видно из результата Postman.

Хотя на стороне клиента данные не отображаются. Код сервиса и компонента ниже, я также включил обратную связь консоли. Таблица, в которой должны отображаться данные, генерируется даже с соответствующим количеством строк. Единственное, что данные отсутствуют. Я с подозрением отношусь к правильному формату JSON. Просто потому, что это первый проект такого типа в моей жизни, где я объединяю Angular и .Net, мне не хватает опыта в подобных вопросах, и я хотел бы получить некоторые советы и помощь.

Код по теме:

для службы Angular У меня есть:

  url = 'http://localhost:8080/api/clients/';

  constructor(private http: HttpClient) { }

  getClients(): Observable<Array<Client>> {
    return this.http.get<Array<Client>>(this.url );
  }

для компонента (я вызываю getClients при инициализации)

 clients:  Array<Client> ;       
 client: any;             

  getClients() {  
    this.clientService.getClients().subscribe(data => {
      this.clients = data ;
      console.log(data); 
    });

  }

под и над словом 'tutaj' ('здесь'по-польски я пытаюсь использовать массив console.log)

соответствующий номер строки в таблице из API

Почтальон

Ответы [ 2 ]

0 голосов
/ 01 ноября 2019

Я решил, проблема действительно была в HTML-коде. У меня был некоторый код, связанный с системой входа в систему, которая проверяла роль вошедшего в систему пользователя, и это вызывало ошибки. Спасибо за вклад, хотя!

F. Бекир Юсель, сериализация модели ничего не меняет.

getClients() {  
    this.clientService.getClients().subscribe(data => {
      this.clients = data ;
      console.log(data); // this one displays daya
      console.log("Test"); //this also is displayed
      console.log(this.clients[0].Id); // this is undefined
    });

HTML-часть выглядит так:

<td id="id">{{client.cardId}}</td>

<td>
  <div *ngIf="client.id != editRowId">
    <p>{{client.name}}</p>

  </div>

и так до последнего столбца.

0 голосов
/ 01 ноября 2019

Вы пытались добавить атрибут API [Serializable]?

 [Serializable]
    public class ModelName
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public List<int> Market { get; set; }
    }

или пытаться JSON.stringify(data) метод при отправке данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...