Pergunta

Existe alguma ferramenta ou utilidade (montagem do mapeador) para construir objetos de negócios a partir de entidades (que são obtidas do dB usando LINQ -> SQL, Framework de entidade ou qualquer outra coisa ..)

Na ausência de um, alguém pode sugerir a melhor maneira que possa ser realizada, em vez disso, pode copiar a colagem das propriedades (o que estou fazendo agora) das classes de entidade.

Vijay

Foi útil?

Solução

Você mapeia para objetos de negócios projetando. Isso funciona mesmo que seus objetos de negócios POCO tenham uma forma diferente de suas entidades.

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.
        };

Outras dicas

Isso não está respondendo diretamente às suas perguntas - mas para projetos menos complicados, eu uso este produto http://www.devexpress.com/products/net/orm/ (.NET Ferramenta Mapper Relacional de Objetos da Devexpress)

Exemplo de uso do AutomApper, sendo o CMAPPER uma classe de meldmapping,

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

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

Obrigado por votar :)

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top