Я пытаюсь отобразить отношение FK в моем классе DTO.Тем не менее, я всегда получаю «нулевые» значения в качестве ответа в «Почтальоне».
Поскольку проект включает в себя компании, которые могут быть либо клиентами / партнерами и т. Д. Я создал базовую таблицу компании и создал клиентов с отношениями FK к компании..
Класс компании
public class Company
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
[MaxLength(50)]
public string Name { get; set; }
[MaxLength(50)]
public string Street { get; set; }
public int Zip { get; set; }
[MaxLength(50)]
public string City { get; set; }
Класс клиента
public class Client
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
[ForeignKey("CompanyId")]
public Company Company { get; set; }
public int CompanyId { get; set; }
public ICollection<User> Users { get; set; }
= new List<User>();
public ICollection<Department> Departments { get; set; }
= new List<Department>();
ClientDTO
public class ClientDto
{
public int Id { get; set; }
public string CompanyName { get; set; }
public string CompanyStreet { get; set; }
public ICollection<UserDto> Users { get; set; }
= new List<UserDto>();
}
AutoMapper в классе запуска
Mapper.Initialize(cfg =>
{
cfg.CreateMap<Client, ClientDto>();
cfg.CreateMap<Client, ClientWithoutUsersDto>();
cfg.CreateMap<Company, CompanyDto>();
cfg.CreateMap<User, UserDto>();
});
При любом отображении я получаю один и тот же Json Response в Postmane :
"id": 1,
"companyName": null,
"streetName": null
Я не уверен, поддерживает ли Automapper вложенное отображение FK.Я знаю, что коллекция пользователей работает хорошо.