Как я могу создать новые поля с AutoMapper? - PullRequest
0 голосов
/ 12 июня 2019

Я хочу создавать новые поля и заменять другие, когда я сопоставляю объекты в C #, как показано ниже

public class one 
{
   public int a {get; set;}
   public int b {get; set;}
   public int c {get; set;}
}

public class two
{
   public int sum {get; set;} //sum = a + b +c ;
}

Mapper.Initialize(cfg =>
{
    cfg.CreateMap<one, two>();//?????mapping sum = a+b+c;
});

Пожалуйста, есть идеи?

1 Ответ

1 голос
/ 12 июня 2019

Используйте Inline Mapping ;

(PS ваши классы и свойства должны начинаться с заглавной буквы)

public class One 
{
  public int A {get; set;}
  public int B {get; set;}
  public int C {get; set;}
}

public class Two
{
  public int Sum {get; set;} //sum = a + b +c ;
}

cfg.CreateMap<One, Two>()
  .ForMember(dest => dest.Sum, m => m.MapFrom(src => src.A + src.B + src.C));

Пример DotNetFiddle

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