Отправьте LIST из C # в угловой - PullRequest
0 голосов
/ 01 октября 2019

У меня есть бэкэнд c # api

public async Task<Object> GetTestType()
{
        List <TestType> TestList = _context.TestTypes.ToList();
        foreach (var l in TestTypeList)
        {
            Log.WriteLog("log.txt", "test1 > " + l.var1);
        }
        Log.WriteLog("log.txt", "test2 > "+TestList .ToString());
    return TestList ;
}

В журнале я получаю

test1 > testvar1
test1 > testvar2
test1 > testvar3

test2 > System.Collections.Generic.List`1[BackEnd.Entities.TestType]

Вот класс TestType

public class TestType
{
    public int id{ get; set; }
    public string var1{ get; set; }
    public string var2{ get; set; }
}

вугловой у меня

this.TestService.getTestType().subscribe(
  (res:any)=>
  {
    console.log(res) ; 

    this.RideTypeModelData.rideTypeID = res.rideTypeID;
    console.log('rideTypeID-'+this.RideTypeModelData.rideTypeID) ; 
  },

В случае console.log (res) Я получаю

[объект Object]

Я также создал TestModel в угловом

export class TestTypeModel{
    id: Number;
    typeWebID: String;
    var1: String;
    var2: String;
}

И пытаюсь использовать его для получения данных объекта с помощью этого открытого TestTypeModelData: TestTypeModel;

this.TestService.getTestType().subscribe(
  (res:any)=>
  {
    this.TestTypeModelData.id= res.id;
    console.log(this.TestTypeModelData.id) ; 
  },

И я получаю ошибку

core.js: 15723 ОШИБКА TypeError: Невозможно установить свойство 'id' из неопределенного

Как я могу передать этот объект List и вывести его в угловом формате?

1 Ответ

1 голос
/ 01 октября 2019

Ваш API возвращает коллекцию, подобную списку TestType, однако в вашем угловом коде вы пытаетесь присвоить эту коллекцию идентификатору.

Вы должны выполнить итерацию объекта res и затем установить значения идентификатора. .

...