Edgar, asi configuro yo en un proyecto actual con AllTypes.
Toda la diferencia es que tengo en dos namespaces distintos los repositorios
que acceden a una u otra base.
Al WithService no le des mucha bola, es para evitar que me registre el
respositorio con IRepository<>.
private static void RegisterRepositories(IWindsorContainer windsorContainer)
{
windsorContainer.Register(AllTypes.FromAssembly(typeof(Repository<,>).Assembly)
.Where(c => c.Namespace.Contains("Relevamiento.Repositories"))
.Configure(c => c.Parameters(Parameter.ForKey("factory")
.Eq("${" + GetSessionFactoryProviderKey("relevamiento") + "}")).
Interceptors(interceptors).Anywhere)
.WithService.Select((t, b) =>
from type in t.GetInterfaces()
where !type.Equals(typeof(IRepository<,>))
select type)
)
.Register(AllTypes.FromAssembly(typeof(Repository<,>).Assembly)
.Where(c => c.Namespace.Contains("Gestion.Repositories"))
.Configure(c => c.Parameters(Parameter.ForKey("factory")
.Eq("${" + GetSessionFactoryProviderKey("servicios") + "}")).
Interceptors(interceptors).Anywhere)
.WithService.Select((t, b) =>
from type in t.GetInterfaces()
where !type.Equals(typeof(IRepository<,>))
select type)
);
}
}
2011/1/11 Edgar Ramos <[email protected]>
> Pensaba en crear otra interface IDaoBDD1 y IDaoBDD2, y hacer que los daos
> respectivos implementen la interface que le corresponde,
> para con esta forma usar AllTypes, pero me parece que la opcion
> .Parameters(Parameter.ForKey("factory").Eq(), va solo con Component.
>
>
> Saludos
>
> Edgar
>
> El 10 de enero de 2011 16:51, [email protected] <
> [email protected]> escribió:
>
>> Hola edgar, ¿te referís a configurar castle?... podés usar AllTypes en
>>
>> lugar de Component y así configurar todos los que cumplan con algún
>> patrón, como ser una interface...
>>
>> una consulta, ¿esto es algo transitorio o es algo definitivo en tu
>> sistema?... si es algo transitorio podrías evaluar de usar los eventos
>> de nhibernate asi cuando lo tengas que sacar, simplemente
>> desconfigurás el evento. Es decir, este sería el caso donde no es
>> parte de tu negocio sino simplemente un tema de infraestructura.
>>
>> Si el requerimiento es permanente iría por el lado del negocio.
>>
>> saludos.
>> nelo
>>
>>
>> 2011/1/10 Edgar Ramos <[email protected]>:
>> > Me encuentro revisando este link
>> >
>> >
>> http://fabiomaulo.blogspot.com/2009/09/configure-sessionfactory-providers.html
>> >
>> > y se me plantea la siguiente duda, debido que tengo que configurar por
>> el
>> > uso de 2 bdd, mis daos y las entidades que serán persistidas
>> > en una y otra bdd.
>> >
>> > Explicitamente tengo que decirle a mi contenedor algo como lo siguiente,
>> > esto no es problema
>> >
>> > container.Register(
>> > Component.For<IAnimalDao>()
>> > .ImplementedBy<AnimalDao>()
>> > .Parameters(Parameter.ForKey("factory")
>> > .Eq("${" +
>> > GetSessionFactoryProviderKey("uNhAddIns1") + "}"))
>> > );
>> >
>> >
>> > y aqui viene la pregunta, puedo decirle a mi contenedor para el resto de
>> > daos (n) use otra session, sin hacerlo explicitamente uno por uno ?
>> >
>> > Saludos
>> >
>> > Edgar
>> >
>> > El 10 de enero de 2011 14:09, Edgar Ramos <[email protected]>
>> escribió:
>> >>
>> >> Gente un saludo
>> >>
>> >> Es posible lo siguiente ?
>> >>
>> >> Actualmente se tiene este esquema
>> >>
>> >> .- Una Base de datos para almacenar stock (y otras cosas, generadas con
>> >> app desarrolladas no orientadas a objetos)
>> >> .- Otra Base de datos para almacenar la facturacion diaria (POS)
>> >> (información generada con una app que utiliza nh3+uNhAddIns para CPBT)
>> >>
>> >> Hoy se desea lo siguiente
>> >>
>> >> .- Persistir nuevos objetos en la bdd de POS y (esto no es problema)
>> >> .- al momento de persistir los objetos del punto anterior persistir
>> otros
>> >> objetos en la bdd de stock (basicamente actualizar el stock)
>> >>
>> >> Si todos mis objetos los persitiera en una sola bdd no habría ningun
>> >> problema, me he planteado seguir el patron visitor para realizar este
>> >> trabajo, gracias a
>> >> todos los comentarios expuestos en un hilo anterior
>> >>
>> >> Mi duda parte por el hecho de tener persistir objetos en la bdd de
>> stock,
>> >> no se como plantear este esquema, me he liado con la session y como
>> >> gestionarla para lograr este objetivo.
>> >>
>> >> Agradezco cualquier comentario o sugerencia de su parte
>> >>
>> >> Saludos
>> >>
>> >> Edgar
>> >>
>> >
>> > --
>> > Para escribir al Grupo, hágalo a esta dirección:
>> > [email protected]
>> > Para más, visite: http://groups.google.com/group/NHibernate-Hispano
>>
>> --
>> Para escribir al Grupo, hágalo a esta dirección:
>> [email protected]
>> Para más, visite: http://groups.google.com/group/NHibernate-Hispano
>>
>
> --
> Para escribir al Grupo, hágalo a esta dirección:
> [email protected]
> Para más, visite: http://groups.google.com/group/NHibernate-Hispano
>
--
Para escribir al Grupo, hágalo a esta dirección:
[email protected]
Para más, visite: http://groups.google.com/group/NHibernate-Hispano