Estoy tratando de conectar con NHibernate y Unhaddins en dos db en Base de
Datos Oracle (Producción / Historia). En cierta acción se desencadena, voy
a guardar los datos de una db a otra, o incluso hacer una copia de
seguridad de la información. Mi solicitud se hace a las normas de MVVM, la
COI, y también utilizar el repositorio.
Estoy teniendo problemas con el registro de la ISessionFactory. Puedo usar
la siguiente sintaxis:
container.AddFacility<PersistenceConversationFacility>();
container.Register(Component
.For<ISessionFactoryProvider>()
.Named(sessionFactoryProviderComponentKey)
.ImplementedBy<MultiSessionFactoryProvider>());
var nhConfigurator = new DefaultMultiFactoryConfigurationProvider();
nhConfigurator.AfterConfigure +=
NhConfiguratorAfterConfigure;
var sfp = new SessionFactoryProvider(nhConfigurator);
container.Register(Component.For<ISessionFactoryProvider>().Instance(sfp));
container.Register(Component.For<ISessionFactoryImplementor>().UsingFactoryMethod(()
=>
(ISessionFactoryImplementor)container.Resolve<ISessionFactoryProvider>().GetFactory(null)));
container.Register(Component.For<ISessionWrapper>().ImplementedBy<SessionWrapper>());
container.Register(Component.For<IConversationsContainerAccessor>().ImplementedBy<NhConversationsContainerAccessor>());
RegisterSessionFactoryFor("pct_prd", container);
RegisterSessionFactoryFor("pct_hst", container);
private static void RegisterSessionFactoryFor(string sessionFactoryName,
IWindsorContainer windsorContainer)
{
windsorContainer.Register(
Component.For<ISessionFactory>().Named(GetSessionFactoryProviderKey(sessionFactoryName))
.Configuration(Attrib.ForName("factoryId").Eq(sessionFactoryProviderComponentKey),
Attrib.ForName("factoryCreate").Eq("GetFactory")).Parameters(Parameter.ForKey("factoryId").Eq(sessionFactoryName)));
}
private static string GetSessionFactoryProviderKey(string
sessionFactoryName)
{
return sessionFactoryName + ".sessionFactory";
}
private static void NhConfiguratorAfterConfigure(object sender,
ConfigurationEventArgs e)
{
e.Configuration.RegisterDisableAutoDirtyCheckListeners();
}
Se produce el error:
La sesión de fábrica-id no se registra
Se utiliza como ejemplo el siguiente post:
http://fabiomaulo.blogspot.com.ar/2009/09/configure-sessionfactory-providers.html
Cómo registrar correctamente la fábrica-id? ¿Tiene usted algún ejemplo de
cómo conectar dos db usando NHibernate / Unhaddins, cómo llevar a cabo este
proceso de copia de seguridad entre las tablas y la forma de registrar los
objetos correctamente?
Saludos cordiales!
--
Para escribir al Grupo, hágalo a esta dirección:
[email protected]
Para más, visite: http://groups.google.com/group/NHibernate-Hispano