From: Fabio Maulo
Sent: Monday, September 10, 2007 12:32 AM
Dicho de paso dos cosas:
1) Esto Reflection.Assembly.Load no hace falta porque, cuando haya arreglado
el asunto, ya lo hace NH
2) No hagas esas cosas caseras usando reflection de forma completamente
inecesaria.
2a) Ri queres algo profesional estudiate IoC mejor conocido como Dependency
Injection y luego ejeí entre:
- Enterprise Library
- Spring.NET
- Castle.Windsor ( <- )
Gracias Fabio, no me di cuenta que no tenía nada que ver con NH, el problema es
lo que comentaba Darío.
Pasando a tus observaciones:
1) Sé que estoy buscando dos veces el assembly, pero no sé cómo sacarlo desde
NH y lo necesito en la línea
Clase = CapaDatos.GetType("AccesoDatos." & ClaseCapaDatos(Tipo))
Lo que puedo hacer, aunque me parece que es lo mismo, es esto:
Public Sub New(ByVal Tipo As TipoABM)
CapaDatos = Reflection.Assembly.Load("AccesoDatos")
Clase = CapaDatos.GetType("AccesoDatos." & ClaseCapaDatos(Tipo))
Entidad = Activator.CreateInstance(Clase)
cfg = New Configuration()
cfg.AddAssembly(CapaDatos)
sessionFactory = cfg.BuildSessionFactory()
End Sub
2) No creo que esté usando reflection de manera innecesaria. El código que
copié obviamente no está completo, saqué todo lo que no estaba relacionado al
problema.
Uso reflection porque me ahorro mucho código y además considero que tengo menos
probabilidades de error porque todo el código se vuelve genérico y solo tengo
que configurar algunos parámetros y constantes.
Entiendo que no es lo ideal porque hace pesada la ejecución de la aplicación,
pero no es algo significativo en este caso.
2a) Voy a tener muy en cuenta esa sugerencia y aprender sobre DI, pero en esta
aplicación todavía no porque no me dan los tiempos.
Saludos,
Christian
--~--~---------~--~----~------------~-------~--~----~
Para escribir al Grupo, hágalo a esta dirección:
[email protected]
Para más, visite: http://groups-beta.google.com/group/NHibernate-Hispano
-~----------~----~----~----~------~----~------~--~---