Мне нужно отобразить реляционную сущность на конечную точку, однако я действительно борюсь с ней.
Видите ли, следующий объект json
- это то, что я сейчас получаю с моим кодом, и в нем есть информация, которая мне нужна, однако она очень запутанная, мне нужен только массив Cursos
, которыйявляется свойством объекта CursoUnidade
.
"cursos": [
{
"cuuCurId": 1,
"curso": {
"curId": 1,
"curDescricao": "Analise e Desenvolvimento de Sistemas",
"curStatus": "A",
"curCodExterno": "",
"curObservacao": ""
},
"cuuUniId": 1,
"cuuStatus": "A"
},
{
"cuuCurId": 2,
"curso": {
"curId": 2,
"curDescricao": "Engenharia Elétrica",
"curStatus": "A",
"curCodExterno": "",
"curObservacao": ""
},
"cuuUniId": 1,
"cuuStatus": "A"
}
]
Мне нужно что-то вроде этого:
"cursos": [
{
"curId": 1,
"curDescricao": "Analise e Desenvolvimento de Sistemas",
"curStatus": "A",
"curCodExterno": "",
"curObservacao": ""
},
{
"curId": 2,
"curDescricao": "Engenharia Elétrica",
"curStatus": "A",
"curCodExterno": "",
"curObservacao": ""
}
]
Это фрагмент кода, отвечающий за объект, который я в данный момент получаю.
public IEnumerable<Unidade> GetCursosByUnidade()
{
return _contexto.Unidade
.Include(c => c.cursos)
.ThenInclude(c => c.Curso)
.ToList();
}
Я хотел бы знать, можно ли напрямую сопоставить свойство Cursos
вместо сопоставления его с подчиненным свойством сущности?
Я также попытался сделать это следующим образом:
public IEnumerable<Unidade> GetCursosByUnidade()
{
return _contexto.Unidade
.Include(c => c.cursos.Curso)
// .ThenInclude(c => c.Curso)
.ToList();
}
Однако этот код выдает следующую ошибку:
Services / DataManager / UnidadeService.cs (107,40): ошибка CS1061: «ICollection» не содержитопределение для "Curso", и не удалось найти метод расширения "Curso", который принимает первый аргумент с типом "ICollection" (может быть, отсутствует директива use или ссылка в сборке?) [/ Users / jed / Projects/Core/SVNSchool/School.csproj]