Преобразование значения свойства источника в пользовательское значение назначения с помощью Automapper в C # - PullRequest
0 голосов
/ 18 февраля 2019

У меня есть

Source.foo = 1;

и тип

Destination.foo

- это строка , и я хочу сам выбрать, какое значение назначить Destination.fooв соответствии с числом, которое я получаю в Source.foo.

Есть ли способ, которым я могу преобразовать

Source.foo = 1 to Destination.foo = "A" 
Source.foo = 2 to Destination.foo = "B"

и так далее?

1 Ответ

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

Да, вы можете сделать что-то вроде:

Mapper.CreateMap<Source, Destination>()
.ForMember(x => x.foo, cfg => cfg.MapFrom(x => GetFooValue(x)));

И затем вы можете написать GetFooValue, чтобы вернуть все, что вы хотите.Как пример:

private string GetFooValue(int foo){
    if(foo == 1)
        return "A";
    ...
    ...
}
...