powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Новый Аutomapper
14 сообщений из 14, страница 1 из 1
Новый Аutomapper
    #39330822
Pavluha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Народ, что-то я не врубаюсь, как использовать в новом Аutomapper ForMember


Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
public class BuildingConfiguration: Profile
    {
        public BuildingConfiguration()
        {
            CreateMap<BuildingCard, Data::BuildingBase>().ForMember(x => x.Id, o => o.Id);
        }

    }



Вот такого метода уже нет. Есть типизированный и со строкой. Куда все дели?
...
Рейтинг: 0 / 0
Новый Аutomapper
    #39330823
Pavluha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Pavluha,

Есть только такие:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
        //
        // Summary:
        //     Customize configuration for individual member. Used when the name isn't known
        //     at compile-time
        //
        // Parameters:
        //   name:
        //     Destination member name
        //
        //   memberOptions:
        //     Callback for member options
        IMappingExpression<TSource, TDestination> ForMember(string name, Action<IMemberConfigurationExpression<TSource, TDestination, object>> memberOptions);
        //
        // Summary:
        //     Customize configuration for individual member
        //
        // Parameters:
        //   destinationMember:
        //     Expression to the top-level destination member. This must be a member on the
        //     TDestinationTDestination
        //
        //   memberOptions:
        //     Callback for member options
        //
        // Returns:
        //     Itself
        IMappingExpression<TSource, TDestination> ForMember<TMember>(Expression<Func<TDestination, TMember>> destinationMember, Action<IMemberConfigurationExpression<TSource, TDestination, TMember>> memberOptions);
...
Рейтинг: 0 / 0
Новый Аutomapper
    #39330839
Pavluha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Так что ли:
Код: c#
1.
            CreateMap<BuildingCard, Data::BuildingBase>().ForMember("Id", x => x.MapFrom(o => o.Id));
...
Рейтинг: 0 / 0
Новый Аutomapper
    #39331150
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pavluha,

ты изначально потерял MapFrom

а вообще, из нового AutoMapper убрали статический маппер. очень правильное решение.
...
Рейтинг: 0 / 0
Новый Аutomapper
    #39331252
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вся эта во3ьня с маппингом стоит того?
...
Рейтинг: 0 / 0
Новый Аutomapper
    #39331260
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman Mejtes,

Если правильно использовать — однозначно ДА. Особенно, если используется слой транспортировки данных (DTO).
...
Рейтинг: 0 / 0
Новый Аutomapper
    #39331513
Pavluha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Roman Mejtesвся эта во3ьня с маппингом стоит того?

Стоит, потому что использую мапинг с DTO на entity
...
Рейтинг: 0 / 0
Новый Аutomapper
    #39331516
Pavluha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
hVosttPavluha,

ты изначально потерял MapFrom



не понял про потерял. Я же в примере привел вариант или не так?
Непонятно, зачем убрали явное указание свойства, а сделали параметр String
...
Рейтинг: 0 / 0
Новый Аutomapper
    #39331626
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pavluha,

не убирали, ты не добавил MapFrom, смотри свой код который ты изначально кинул
...
Рейтинг: 0 / 0
Новый Аutomapper
    #39331936
Pavluha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
hVostt,

Понял. Похожего метода больше нет, добавляю через строчное наименование поля
...
Рейтинг: 0 / 0
Новый Аutomapper
    #39331960
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Братцы, а где и зачем эта фигня нужна?
...
Рейтинг: 0 / 0
Новый Аutomapper
    #39331990
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cat2Братцы, а где и зачем эта фигня нужна?
Армянский комсомол сам себе создаёт трудности, а потом их героически преодолевает
...
Рейтинг: 0 / 0
Новый Аutomapper
    #39332117
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cat2Братцы, а где и зачем эта фигня нужна?

Что, AutoMapper? Централизованно-модульно конфигурируемый маппинг одних классов в другие, с поддержкой LINQ, с поддержкой проекций.


Грубо говоря, чтобы не писать:

Код: c#
1.
2.
3.
target.A = source.A;
target.B = source.B;
...



А написать что-то типа:
Код: c#
1.
mapper.Map(source, target);



или

Код: c#
1.
var target = mapper.Map<TargetClass>(source);



Для чего это нужно? Чтобы уменьшить количество возможных ошибок, автоматизировать работу, свести настройку одной операции в одно конкретное место. Также бесплатно получить генерацию быстрых запросов-проекций в LINQ.
...
Рейтинг: 0 / 0
Новый Аutomapper
    #39332121
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cat2,

На вопрос, где это используется, отвечу так: чаще всего, как механизм извлечения данных из ORM в DTO и в модели представления, а также наоборот, обновление данных ORM из DTO или моделей представления. Хорошей практикой является работа с данными на прикладном уровне только с DTO, который потом обновляют данные моделей ORM с помощью конфигурируемого механизма отражения AutoMapper. Но при умелом использовании, область применения AutoMapper можно существенно расширить, так как он поддерживает DI и может выступать как генератором прокси-объектов, так и быть фабрикой объектов из разных источников.
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Новый Аutomapper
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]