Инструменты для отображения бизнес-объектов (объектов DTO) из сущностей в asp.net mvc? - PullRequest
0 голосов
/ 27 августа 2009

существует ли какой-либо инструмент или утилита (сборщик сопоставления) для построения бизнес-объектов из сущностей (которые получены из БД с использованием linq -> sql, структуры сущностей или чего-либо еще ...)

при отсутствии такового, может кто-нибудь предложить лучший способ, который может быть достигнут, а может скопировать вставку свойств (что я сейчас делаю) из классов сущностей .?

Виджей

Ответы [ 4 ]

9 голосов
/ 27 августа 2009
4 голосов
/ 27 августа 2009

Вы проецируете на бизнес-объекты путем проектирования. Это работает, даже если ваши бизнес-объекты POCO имеют форму, отличную от вашей сущности.

var q = from dataObject in Context.DataObjects
        select new BusinessObject
        {
            Name = dataObject.Name,
            RelatedObjectName = dataObject.RelatedObject.Name, // works even if RelatedObject is null
            DirectChildren = from c in dataObject.Children
                             select new ChildBusinessObject
                             {
                                 Name = c.Name
                                 // etc.
                             }
            GrandChildren = from c in dataObject.Children
                            from gc in c.Children
                            select new ChildBusinessObject
                            {
                                Name = c.Name
                                // etc.
                            },
            // etc.
        };
0 голосов
/ 02 сентября 2014

Пример использования Automapper, cmapper является классом Meldmapping,

 cMapper.FillBusinessObject(ViewModel, BusinessObject);  // To map from ViewModel to BO

 cMapper.FillModel(BusinessObject, ViewModel);  // To map from BO to ViewModel

спасибо за голосование:)

0 голосов
/ 27 августа 2009

Это не прямой ответ на ваши вопросы - но для менее сложных проектов я использую этот продукт http://www.devexpress.com/Products/NET/ORM/ (.NET Object-Relational Mapper Tool от DevExpress)

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