вложенный автомат второго уровня c # unflatten - PullRequest
0 голосов
/ 21 февраля 2019

Мне нужна помощь с вложенным автоматом второго уровня в C #.

У меня есть следующие классы:

public class Event
{
    int EventId { get; set; }
    int EventName { get; set; },
    Student Student { get; set; }
}

public class Student
{
    int StudentId { get; set; }
    int StudentName { get; set; },
    Address Address { get; set; },
}

public class Address
{
    string AddressName { get; set; }
    string City { get; set; }
}

public class SourceEvent
{
    int EventId { get; set; }
    int EventName { get; set; },
    int StudentId { get; set; }
    int StudentName { get; set; },
    string AddressName { get; set; }
    string City { get; set; },
}

cfg.CreateMap<SourceEvent, Event>()
                    .ForMember(d => d.Student,
                        o => o.MapFrom(
                            s => new Student
                            {
                                StudentId = s.StudentId,
                                StudentName = s.StudentName,
                            }
                        )
                        );
            });

как мне автоматически настроить конфигурацию из SourceEvent в Event с Student и Address?

Я знал, как отобразить первый уровень, но не знал, как отобразить второй уровень (класс адресов)

1 Ответ

0 голосов
/ 21 февраля 2019

Я нашел свой собственный ответ ниже, чтобы добавить класс адресов.

cfg.CreateMap<SourceEvent, Event>()
                .ForMember(d => d.Student,
                    o => o.MapFrom(
                        s => new Student
                        {
                            StudentId = s.StudentId,
                            StudentName = s.StudentName,
                            Address = new Address   {
                              AddressName = s.AddressName,
                              City = s.City 
                             }
                        }));
        });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...