AdaptandodemanerasencillaconAutoMappernuestrosDataTransferObjects(DTO)EntityFramework,WCFC#|JhonnysLpezDevNinja.
JhonnysLpezDevNinja.NET
BienvenidosamiblogsobretecnologaMicrosoft.NET:C#,WCF,ASP.NET,EntityFramework.
Consultarmiblog
Buscar...
SiguemispublicacionesvaEmail
Ingresaladireccindecorreoconlacualdeseasseguirmiblog.
neteaotros645seguidores
Introducetudireccindecorreoelectrnico
Seguirme!
ElAutordelBlog
jhonnys.lopez
AdaptandodemanerasencillaconAutoMappernuestrosDataTransferObjects(DTO)EntityFramework,WCFC#
WCFretornarunlistadodeentidadesEntityFrameworkconC#yVisualStudio11
ServiciosWCFconEntityFramework4.3.1C#yVisualStudio11
PartiendodelaBasedeDatosSchemaModelFirstEntityFramework4.3.1yC#
ProcedimientosAlmacenados,TransaccionesenEntityFramework4.3.1conC#yVisualStudio11
InsigniaFacebook
JhonnysLpezCeledon
Creatuinsignia
BDotNet
BDotNet
BDotNet
MCSColombia
MicrosoftCommunity
Specialist
MCSColombia
Temasquemeinteresan
Arquitectura(1)
EntityFramework(11)
WCF(3)
MiTwitter
Webuildthethingwrong,orwebuildthewrongthing.BySteveSmith@ardalisEl:8monthsago
Yoeraunduroenestaguaenmistiemposjajaja:(todosmejoramosAnIdiotsGuidetoReallyReallyBadProgramming
codeproject.com/Articles/55892El:8monthsago
"YourcodeissoabstractitdeservebeingputintheMuseumforModernArt."LOLCuandonospasamosconlasabstracciones
@nicolocodevEl:8monthsago
file:///C:/Users/greg/Desktop/PLANTILLAS%20T4/Adaptando%20de%20manera%20sencilla%20con%20AutoMapper%20nuestros%20Data%20Transfer
1/10
15/10/2015
AdaptandodemanerasencillaconAutoMappernuestrosDataTransferObjects(DTO)EntityFramework,WCFC#|JhonnysLpezDevNinja.
@nicolocodev:)felicitacionesEl:1yearago
Excelentemegustaramuchocuentenconmigo@nicolocodev@jorgegamba@ralvaradot@julitogtu@JuanKRuiz@ManquipEl:
1yearago
@jramirezdevsiclaronosvemosall:)El:1yearago
@jramirezdevjajajajayaahoraslosobercoding.El:1yearago
RT@_PedroHurtado:Apostepor#nodejs#angularjsacertydespusmelajuguenproduccincon#metrouicssmetroui.org.uayahora
El:1yearago
@jramirezdevcompadreandodevacacionesenValleduparechandoASMconOldParrEl:1yearago
@Varo_Julio@BerttyJulioesoestabaapuntodeescribir,quemetengasunaasesperndome.El:1yearago
MisArchivos
julio2012(1)
May2012(3)
abril2012(7)
PublicacionesRecientes
AdaptandodemanerasencillaconAutoMappernuestrosDataTransferObjects(DTO)EntityFramework,WCFC#
WCFretornarunlistadodeentidadesEntityFrameworkconC#yVisualStudio11
ServiciosWCFconEntityFramework4.3.1C#yVisualStudio11
PartiendodelaBasedeDatosSchemaModelFirstEntityFramework4.3.1yC#
ProcedimientosAlmacenados,TransaccionesenEntityFramework4.3.1conC#yVisualStudio11
ManejandoRelacionesconEntityFramework4.3.1CodeFirstFluentAPIconC#yVisualStudio11
ManejandoRelacionesconEntityFramework4.3.1CodeFirstconC#yVisualStudio11
FluentAPIEntityFramework4.3.1conC#yVisualStudio11
CambiarCadenadeConexinEntityFramework4.3.1conC#yVisualStudio11
EntityFramework4.3.1DataAnnotationsconC#yVisualStudio11
IntroduccinaEntityFramework4.3.1CodeFirstconC#VisualStudio11
C#EntityFrameworkWCF
Arquitectura
PublicaionesPopulares
AdaptandodemanerasencillaconAutoMappernuestrosDataTransferObjects(DTO)EntityFramework,WCFC#
ProcedimientosAlmacenados,TransaccionesenEntityFramework4.3.1conC#yVisualStudio11
WCFretornarunlistadodeentidadesEntityFrameworkconC#yVisualStudio11
ServiciosWCFconEntityFramework4.3.1C#yVisualStudio11
PartiendodelaBasedeDatosSchemaModelFirstEntityFramework4.3.1yC#
ManejandoRelacionesconEntityFramework4.3.1CodeFirstconC#yVisualStudio11
ManejandoRelacionesconEntityFramework4.3.1CodeFirstFluentAPIconC#yVisualStudio11
IntroduccinaEntityFramework4.3.1CodeFirstconC#VisualStudio11
CambiarCadenadeConexinEntityFramework4.3.1conC#yVisualStudio11
FluentAPIEntityFramework4.3.1conC#yVisualStudio11
Meta
Registrarse
Acceder
RSSdelasentradas
RSSdeloscomentarios
WordPress.com
WCFretornarunlistadodeentidadesEntityFrameworkconC#yVisualStudio11|
AdaptandodemanerasencillaconAutoMappernuestrosDataTransferObjects(DTO)Entity
Framework,WCFC#
16Votes
Luegoyadeunalargaausenciapormotivoslaboralesporfintengotiempodisponibleparacompartiralgunademisexperienciastrabajandocon.NET,
continuandoconmisltimaspublicacionesquepartierondeunaintroduccinaEntityFramework4.3.1hastallegaralpuntodehablarunpocode
serviciosconWCFWindowsCommunitacionFoundationanalizaremosalgunostemasquedebemostenerencuentayespecficamenteparasta
publicacinlacuestines:voyaretornaroaenviaratravsdemiserviciolasentidadesquehedeclaradoenminegocio?queenpocaspalabrassera
voyaexponermimodelodenegocioatravsdemiservicio?puedesonaralgodepocaimportanciaenalgunassituacionesperocuandoempezamosa
trabajarconsistemasmuchomsgrandesseconvierteenalgodeimportanteconsideracinelenviarmisentidadestalcualcomolashedefinidoenel
negocioesprcticamentedaraconocermiesquemadedatossiusounEntityFrameworkyestoymapeandoclaseportabla.Laintencinestambin
simplificartodoelsubsistemaquedeseoexponer,esdecirofrecerunafachadaounainterfacemssimple.
Veamosquetcnicaspodemosimplementarparaevitartodoesto.
DataTransferObjectsDTO:EsunobjetoelcualtransportainformacinatravsdeprocesosenstecasounWCF,enordenparareducirelnmero
dellamadasamtodos.
file:///C:/Users/greg/Desktop/PLANTILLAS%20T4/Adaptando%20de%20manera%20sencilla%20con%20AutoMapper%20nuestros%20Data%20Transfer
2/10
15/10/2015
AdaptandodemanerasencillaconAutoMappernuestrosDataTransferObjects(DTO)EntityFramework,WCFC#|JhonnysLpezDevNinja.
UnDTOnosayudatambinasimplificardemaneratalqueporejemplounaFacturaquetienereferenciasaunClienteyunoomsDetalleFacturase
puedesimplificaraunnicoobjetoesdecirenunFacturaDTOyasevitarenviardirectamentelaentidadfacturaatravsdelservicioyexponerenste
casonuestromodelodedatosymodelodenegocio.
TodoestolologramosescribiendounanuevaclasequecontendrtodaslaspropiedadesdenuestrasentidadesquedeseamosexponeratravsdelWCF:
EllaaplicacinquehevenidotrabajandodesdeeliniciodelaintroduccinaEntityFrameworkyatengounWCFparaexponeralgunosmtodos
veamoscomohacerusodelosDTOs.
Supongamosquedeseamosexponerunmtodoparaobtenerellistadodecursos,peropuedequequienconsumirelmtodononecesitetodala
informacindelcursocomotaloquesimplementeporalgnmotivodeintegridadnoentreguemostodalaentidadCursocomoest,paraello
crearemosunanuevaclasealaquellamarCuroDTOquecontendrlainformacinquedeseoexponer.
PrimeroveamoscomoestdefinidalaentidadCurso:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
namespaceDevNinja.EntityFramework.Negocio
{
publicclassCurso
{
publicintCursoId{get;set;}
publicstringNombre{get;set;}
publicDateTimeInicia{get;set;}
publicstringDuracion{get;set;}
publicDateTimeRegistrado{get;set;}
publicListRequisitos{get;set;}
publicListAsistenciasCurso{get;set;}
publicCurso()
{
Requisitos=newList();
AsistenciasCurso=newList();
}
}
}
CursoDTO:
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
28
29
usingSystem;
usingSystem.Collections.Generic;
namespaceDevNinja.EntityFramework.Servicios.DTOs
{
[DataContract]
publicclassCursoDTO
{
publicCursoDTO()
{
Requisitos=newHashSet();
}
[DataMember]
publicICollectionRequisitos{get;set;}
[DataMember]
publicintCursoId{get;set;}
[DataMember]
publicstringNombre{get;set;}
[DataMember]
publicDateTimeInicia{get;set;}
[DataMember]
publicstringDuracion{get;set;}
}
}
RequisitoDTO:
1
2
3
4
5
6
7
8
9
10
11
usingSystem.Runtime.Serialization;
namespaceDevNinja.EntityFramework.Servicios.DTOs
{
[DataContract]
publicclassRequisitoDTO
{
[DataMember]
publicstringNombre{get;set;}
}
}
Puedenobservarquesloquieroexponeralgunosdatosdelcursosimplementelosnecesarios,veamosahoraelserviciodequemanerasera:
IServicioDevNinja:
file:///C:/Users/greg/Desktop/PLANTILLAS%20T4/Adaptando%20de%20manera%20sencilla%20con%20AutoMapper%20nuestros%20Data%20Transfer
3/10
15/10/2015
1
2
3
4
5
6
7
8
9
10
11
AdaptandodemanerasencillaconAutoMappernuestrosDataTransferObjects(DTO)EntityFramework,WCFC#|JhonnysLpezDevNinja.
usingSystem.Collections.Generic;
namespaceDevNinja.EntityFramework.Servicios
{
[ServiceContract]
publicinterfaceIServicioDevNinja
{
[OperationContract]
IEnumerableObtenerCursos();
}
}
ServicioDevNinja:
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
usingSystem.Collections.Generic;
usingSystem.Data.Entity;
usingSystem.Linq;
usingDevNinja.EntityFramework.Datos;
usingDevNinja.EntityFramework.Negocio;
usingDevNinja.EntityFramework.Servicios.DTOs;
namespaceDevNinja.EntityFramework.Servicios
{
publicclassServicioDevNinja:IServicioDevNinja
{
privatereadonlyDevNinjaContexto_contexto;
publicServicioDevNinja()
{
_contexto=newDevNinjaContexto();
Database.SetInitializer(null);
}
#regionIServicioDevNinjaMembers
publicIEnumerableObtenerCursos()
{
//Obtengoellistadodecursosincluyendolosrequisitos.
varcursos=_contexto
.Cursos
.Include(c=>c.Requisitos)
.ToList();
//DebotransformarloscursosencursosDTO.
IListcursosDto=newList();
//LatransformacinoelprocesodeadaptarunCursoaunCursoDTO
//puedeseralgomuytediososegnlacantidaddepropiedadesque
//deseamosexponeratravesdelWCF.Manualmente.
foreach(Cursocursoincursos)
{
CursoDTOcursoDto=newCursoDTO
{
CursoId=curso.CursoId,
Duracion=curso.Duracion,
Inicia=curso.Inicia,
Nombre=curso.Nombre
};
foreach(Requisitorequisitoincurso.Requisitos)
{
cursoDto.Requisitos.Add(newRequisitoDTO
{
Nombre=requisito.Nombre
});
}
}
//RetornarloscursosDTO.
returncursosDto;
}
#endregion
}
}
PuedenapreciarcomoelhacerusodeDTOsparaalgunoscasosseralgomuylargodeadaptaryaquenostocaracrearlosDTOsdemaneramanual
sinembargohemoslogradoexponerslolonecesarioatravsdenuestroWCF:Aqupuedenverelservicioenaccincomoretornaellistadode
DTOs.
file:///C:/Users/greg/Desktop/PLANTILLAS%20T4/Adaptando%20de%20manera%20sencilla%20con%20AutoMapper%20nuestros%20Data%20Transfer
4/10
15/10/2015
AdaptandodemanerasencillaconAutoMappernuestrosDataTransferObjects(DTO)EntityFramework,WCFC#|JhonnysLpezDevNinja.
AhorahagamoseltrabajomuchomsfcilmedianteelusodeAutoMapperqueenpocaspalabrasnosayudademaneramuysencillaatransformaro
realizarelprocesodeadaptarunobjetoenotroyaquecomohanpodidoapreciarelconvertirlistadodecursosaunlistadodeDTOSdecursospuede
seralgotedioso.PrimerovoyausarNuGetparainstalaryreferenciarAutoMapperenmiproyectodeServicios:
VistadeAutoMapperreferenciado:
file:///C:/Users/greg/Desktop/PLANTILLAS%20T4/Adaptando%20de%20manera%20sencilla%20con%20AutoMapper%20nuestros%20Data%20Transfer
5/10
15/10/2015
AdaptandodemanerasencillaconAutoMappernuestrosDataTransferObjects(DTO)EntityFramework,WCFC#|JhonnysLpezDevNinja.
Ahoraslotengoqueestablecerdequemaneraseconvierteunobjetoaotroesdecirespecificarelmapadelosobjetosquedeseoconvertirdemanera
talqueAutoMapperapartirdedichomapaseacapazderetornarmeelobjetoquedeseo,paraellodebocrearunperfildemapasdondeespecificarde
quemanerasernrealizadalasconversiones:Crearunanuevaclasequecontendrtodalainformacindelmapeo,laclaseheredardeProfilede
AutoMapper:
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
usingAutoMapper;
usingDevNinja.EntityFramework.Negocio;
namespaceDevNinja.EntityFramework.Servicios.DTOs
{
publicclassDevNinjaPerfil:Profile
{
publicoverridestringProfileName
{
get{return"DevNinjaPerfil";}
}
protectedoverridevoidConfigure()
{
Mapear();
}
privatevoidMapear()
{
//ParaconvertirdeunRequisitoaunRequisitoDTO,
//seharadelasiguientemanera:
Mapper.CreateMap<Requisito,RequisitoDTO>()
//t:Entidaddestino(RequisitoDTO).
//f:Etindadorigen(Requisito).
//r:Entidadorigen(Requisito).
//LapropiedadNombrelaentidaddestino,
//seraigualalapropiedadNombredelaentidadOrigen.
.ForMember(t=>t.Nombre,f=>f.MapFrom(r=>r.Nombre))
//LaconversionseratambienendobleviadeRequisitoDTOaRequisito.
.ReverseMap();
//ParaconvertirdeunCursoaunCursoDTOseharadelasiguientemanera:
Mapper.CreateMap<Curso,CursoDTO>()
//t:Entidaddestino(CursoDTO).
//f:Etindadorigen(Curso).
//c:Entidadorigen(Curso).
//LapropiedadCursoIdlaentidaddestino,
//seraigualalapropiedadCursoIddelaentidadOrigen
//yasiconcadaunadelapropiedades.
.ForMember(t=>t.CursoId,f=>f.MapFrom(c=>c.CursoId))
.ForMember(t=>t.Duracion,f=>f.MapFrom(c=>c.Duracion))
.ForMember(t=>t.Inicia,f=>f.MapFrom(c=>c.Inicia))
.ForMember(t=>t.Nombre,f=>f.MapFrom(c=>c.Nombre))
//CursoDTOtieneunacolecciondeRequisitoDTO,
//CursotieneunacolecciondeRequisito,pero
//yahemosespecificadocomosehacelaconversion
//deunRequisitoaunRequisitoDTOporloquepodemos
//especidicaresaconversion:
.ForMember(t=>t.Requisitos,f=>f.MapFrom(c=>c.Requisitos))
//Conversionendoblevia.
.ReverseMap();
}
}
63
file:///C:/Users/greg/Desktop/PLANTILLAS%20T4/Adaptando%20de%20manera%20sencilla%20con%20AutoMapper%20nuestros%20Data%20Transfer
6/10
15/10/2015
63
AdaptandodemanerasencillaconAutoMappernuestrosDataTransferObjects(DTO)EntityFramework,WCFC#|JhonnysLpezDevNinja.
AutoMapperesmuyperomuymuytilparastetipodeconversionesademsqueexponeunFluentAPIcomoyahemosvistoquetambientiene
EntityFrameworkasqueestaremosrelacionadosconeltema.Ahoraslovoyaestablecerelperfilunavezsellameelservicio,yharusodeest
excelenteherramienta:
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
usingSystem.Collections.Generic;
usingSystem.Data.Entity;
usingSystem.Linq;usingAutoMapper;
usingDevNinja.EntityFramework.Datos;
usingDevNinja.EntityFramework.Negocio;
usingDevNinja.EntityFramework.Servicios.DTOs;
namespaceDevNinja.EntityFramework.Servicios
{
publicclassServicioDevNinja:IServicioDevNinja
{
privatereadonlyDevNinjaContexto_contexto;
publicServicioDevNinja()
{
_contexto=newDevNinjaContexto();
Database.SetInitializer(null);
//Establecerelperfilconelqueseharanlasconversiones
//enAutoMapper.Sisipuedotenermuchoperfilesyreemplazarlosunoporotro.
Mapper.Initialize(t=>t.AddProfile());
}
#regionIServicioDevNinjaMembers
publicIEnumerableObtenerCursos()
{
//Obtengoellistadodecursosincluyendolosrequisitos.
varcursos=_contexto
.Cursos
.Include(c=>c.Requisitos)
.ToList();
//Heaquilamaravilla,puedomapeardeunalistaaotralista
//yenelperfildemapeosoloestablecemoscomohacelaconversion
//deununicoobjecto.
IEnumerablecursosDto=Mapper.Map<IEnumerable,
IEnumerable>(cursos);
returncursosDto;
}
#endregion
}
}
AhoratengounaherramientaquemeayudaaconvertirmisentidadesaDTOsyviceversayaslodeseo.
Nuestraaplicacinsiguefuncionandodelamismamaneraylasconversionesentreobjetossonmuysencillas.
Esperolesseadeutilidadynosleemosenunaprximapublicacin.
Compartesto:
Share
Megusta:
Relacionado
WCFretornarunlistadodeentidadesEntityFrameworkconC#yVisualStudio11En"EntityFramework"
ServiciosWCFconEntityFramework4.3.1C#yVisualStudio11En"EntityFramework"
PartiendodelaBasedeDatosSchemaModelFirstEntityFramework4.3.1yC#En"EntityFramework"
Postedon14dejuliode2012at12:06PMinArquitectura,EntityFramework,WCF|RSSfeed|Responder|TrackbackURL
file:///C:/Users/greg/Desktop/PLANTILLAS%20T4/Adaptando%20de%20manera%20sencilla%20con%20AutoMapper%20nuestros%20Data%20Transfer
7/10
15/10/2015
AdaptandodemanerasencillaconAutoMappernuestrosDataTransferObjects(DTO)EntityFramework,WCFC#|JhonnysLpezDevNinja.
Etiquetas:Arquitectura,C#,EntityFramework,WCF
8ResponsestoAdaptandodemanerasencillaconAutoMappernuestrosDataTransferObjects(DTO)Entity
Framework,WCFC#
1.
carlos
7deagostode2012en1:25PM
0 0 RateThis
quetalJhonnybastantebuenotututorial,perotengounaduda,siempreesnecesarioespecificarquepropiedaddeorigenconquepropiedadde
destinoserelacionan,esdecirnoestariamoshaciendoelmismotrabajoquehacerelmapeosinelautomaper.
ocualesladiferencia,enalgunosblogveoquesolorelacionanlasclasesdeorigenydestinoynoasilaspropiedades.
estoyalgoconfundidoenestaparte,porfavorsimelapuedesaclarar.
graciasdeantemano.
Responder
jhonnys.lopez
7deagostode2012en2:46PM
1 0 RateThis
HolaCarlos,tienesraznnoesnecesarioespecificarlamaneracomoserealizaelmapeoenalgunoscasoscomoelqueexpongo.Laidea
esmostrarcomosehace,perohaycasosdondesiestotalmentenecesarioporejemplosupongamosquetenemosunaentidadennuestro
negociollamadaClientequetienelaspropiedadesNombreyApellido,tambintenemosunDTOllamadoClienteDTOperodichoDTO
solotienelapropiedadNombreesdecirelnombrecompletodelcliente.ConAutomapperpodemosespecificarquecuandoseconviertade
unClienteaunClienteDTOlapropiedadNombredelClienteDTOserigualalaconcatenacindelNombreyelApellidodelClienteen
esecasoesnecesarioespecificarcomoserealizalaconversin.
MiejemploesparailustrardequemanerasepuedeusarelFluentAPIdeAutomapper.
Gracias.
Responder
2.
Fede
10deagostode2012en5:51PM
0 0 RateThis
Buentutorial.
EncasodequererunareferenciaenRequisitoDTOaCursoDTO,estoyteniendoproblemas.
Supongoqueesporlareferenciaciclicaqueseforma.
Existeunaformadehacerlofuncionarcorrectamente?
Muchasgracias.
usingSystem.Runtime.Serialization
namespaceDevNinja.EntityFramework.Servicios.DTOs
{
[DataContract]
publicclassRequisitoDTO
{
[DataMember]
publicstringNombre{getset}
[DataMember]
publicCursoDTOCurso{getset}
}
}
Responder
3.
carlos
17deagostode2012en1:36PM
0 0 RateThis
QuetalJhonny.graciasporaclararmisdudasysiesbastantevalidoloscasosquetumencionas,graciasdenuevoymuybuenotublogsigue
adelante:)
Responder
file:///C:/Users/greg/Desktop/PLANTILLAS%20T4/Adaptando%20de%20manera%20sencilla%20con%20AutoMapper%20nuestros%20Data%20Transfer
8/10
15/10/2015
AdaptandodemanerasencillaconAutoMappernuestrosDataTransferObjects(DTO)EntityFramework,WCFC#|JhonnysLpezDevNinja.
4.
Ivan
4denoviembrede2012en1:58AM
0 0 RateThis
Buenasnochesjhonny,unaconsulta,comopuedeobtenerunresultadolinqyguardarloenunaclaseysurelacin,escomoquetengaunaclase
autoyperteneceauntipodeauto(relacionunoauno),cuandoquieromostrarenunalistaelnombredelautoysudescripciondetipo(noel
cdigodetipo).Ejm.
ClassA
{
atributoa1
atributoa2
atributob1//supongamoscdigodelaclaseB
atributoBB//pararelacionarconlaclaseB
}
ClassB
{
atributob1//cdigo
atributob2
}
IEnumerableitems
items=A
.Join(B,
a=>a.b1,
b=>b.b1,
(a,b)=>new{a,b})
//perotengoproblemasenlaconsultaconlinq,yaquenoreconocelainstanciadelaclaseB,lamayoradelosejemplosutilizanvaryloque
quieroesusarlasclasesquehecreadoynadadevar.Gracias,cualquierayudaserbienvenida.(ahoraelejemploesunarelacindeunoauno,
perotambinpuededarmeunejemplodeunoamuchos.).Gracias.
Responder
jhonnys.lopez
16denoviembrede2012en10:31PM
0 0 RateThis
Hola,nosesientendbientududa,perolacuestinesquealparecerestasretornandountipoannimoentuconsultaqueconstadelas
clasesAyB,supongamosqueloquedeseasesunaclasequecontengatodoslaspropiedadesdelaclaseA+algunaspropiedadesdela
claseBloquetienesquehaceres:
1IdealquetengasunaterceraclaseconlaspropiedadesquedeseasunirdeAyB:
ClassC
{
a1
a2
b1
b2
}
2enlaconsultaLinqcreaunanuevaClassC:
varclasesC=frommiAinA
joinmiBbinBonmiA.b1equalsmiB.b1
selectnewC
{
a1=miA.a1,
a2=miA.a2,
b1=miB.b1,
b2=miB.b2
}
destamanerapuederetornarunalistadeChaciaotrosmtodosocapasentuaplicacin.
Responder
5.
idmirsoft
16defebrerode2013en10:37AM
0 0 RateThis
Enelcasosiquisieramosconsultardatosde2basededatoscomoseariaelautomapper.
file:///C:/Users/greg/Desktop/PLANTILLAS%20T4/Adaptando%20de%20manera%20sencilla%20con%20AutoMapper%20nuestros%20Data%20Transfer
9/10
15/10/2015
AdaptandodemanerasencillaconAutoMappernuestrosDataTransferObjects(DTO)EntityFramework,WCFC#|JhonnysLpezDevNinja.
Responder
Trackbacks
1. AgendadelaComunidadMSExpertos
31dejuliode2012en12:05PM
Tienesalgunaduda?Deseasopinarsobrestetema?Dejauncomentarioacontinuacin.
Introducetu
comentarioaqu...
Etiquetas
C#EntityFrameworkWCF
Arquitectura
Calendario
julio2012
L M X J V S D
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 28 29
30 31
may
Archivos
julio2012
May2012
abril2012
CreaunblogounsitiowebgratuitosconWordPress.com.|EltemaUndertheInfluence.
Seguir
SeguirJhonnysLpezDevNinja.NET
Recibecadanuevapublicacinentubuzndecorreoelectrnico.
neteaotros645seguidores
Introducetudireccindecorreoelectrnico
Suscrbeme
ConstruyeunsitiowebconWordPress.com
A%dblogueroslesgustaesto:
file:///C:/Users/greg/Desktop/PLANTILLAS%20T4/Adaptando%20de%20manera%20sencilla%20con%20AutoMapper%20nuestros%20Data%20Transfe
10/10