Конвенция Automapper - PullRequest
       9

Конвенция Automapper

5 голосов
/ 08 января 2010

Это возможно с помощью Automapper для настройки соглашения, так что карты не должны создаваться вручную в ситуациях, когда к объекту, который вы отображаете, добавлен только «ViewModel».

В качестве примера я бы предпочел не настраивать следующую карту:

Mapper.CreateMap<Error, ErrorViewModel>();

Я понимаю, что если требуется проекция, мне потребуется создать собственную карту, но было бы неплохо иметь соглашение о создании карт.

1 Ответ

6 голосов
/ 09 января 2010

Вам необходимо использовать Mapper.DynamicMap<TDest>(source) для отображения.

Как видно из приведенного ниже примера, он автоматически сопоставляет совпадающие свойства от источника к месту назначения.

using AutoMapper;
using System.Diagnostics;

class Program
{
    static void Main(string[] args)
    {
        var source = new Foo {Value = "Abc"};
        var destination = Mapper.DynamicMap<FooViewModel>(source);

        Debug.Assert(source.Value == destination.Value);
    }
}

public class Foo
{
    public string Value { get; set; }
}

public class FooViewModel
{
    public string Value { get; set; }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...