hey - cheers for looking at this with me. not very experienced with nhib - i thought the assembly definition in the xml would point the factory to one assembly so it would only push the resulting sql creation scripts to that one db. i thought the one in the c# was just there to bootstrap it all.
so i need to have 2 separate config builders? how do i wire one up with one factory configuration and the other with the other configuration? On Sun, Oct 18, 2009 at 12:22 PM, Valeriu Caraulean <[email protected]> wrote: > > You have specified assemblies related to each session factory in XML > configuration. Why you do that again in code? > > Your configuration builder adds two assemblies. Are those assemblies > each for different domain? Then why you're adding them both to > configuration? > > > On Sat, Oct 17, 2009 at 12:53 PM, Wayne Douglas <[email protected]> wrote: >> >> very strange :s >> >> here is my config builder: >> >> <code> >> >> public class FluentNHibernateConfigurationBuilder : IConfigurationBuilder >> { >> #region IConfigurationBuilder Members >> >> public Configuration GetConfiguration(IConfiguration >> facilityConfiguration) >> { >> var defaultConfigurationBuilder = new >> DefaultConfigurationBuilder(); >> Configuration configuration = >> defaultConfigurationBuilder.GetConfiguration(facilityConfiguration); >> >> var models = new PersistenceModel(); >> models.AddMappingsFromAssembly(typeof(Provider).Assembly); >> models.AddMappingsFromAssembly(typeof(Report).Assembly); >> models.Conventions.Add(typeof(ForeignKeyConventionOverride)); >> models.Configure(configuration); >> >> if (AppSettings.GetConfigurationBoolean("RebuildDb", false)) >> { >> var export = new SchemaExport(configuration); >> var sb = new StringBuilder(); >> TextWriter output = new StringWriter(sb); >> export.Drop(true, true); >> export.Execute(true, false, false, null, output); >> export.Create(true, true); >> } >> >> return configuration; >> } >> >> #endregion >> } >> >> </code> >> >> any help? >> >> obv the classes Provider and Report come from 2 seperate assemblies >> and this config builder lives inside my web project which has >> references to both. >> >> w:// >> >> On Fri, Oct 16, 2009 at 11:08 PM, Valeriu Caraulean <[email protected]> >> wrote: >>> >>> The config looks ok. >>> Are you sure your code is correct? >>> >>> On Fri, Oct 16, 2009 at 10:06 PM, Wayne Douglas <[email protected]> >>> wrote: >>>> >>>> so... still not got this working :( >>>> >>>> here is the actual config i'm using: >>>> >>>> <code> >>>> >>>> <castle> >>>> <components> >>>> <component id="GenericRepository" type="Ideal.Web.Repository`1, >>>> Ideal.Web"/> >>>> </components> >>>> <facilities> >>>> <facility id="nhibernate" >>>> isWeb="true" >>>> >>>> type="Castle.Facilities.NHibernateIntegration.NHibernateFacility, >>>> Castle.Facilities.NHibernateIntegration" >>>> >>>> configurationBuilder="Ideal.Rttm.Web.FluentNHibernateConfigurationBuilder, >>>> Ideal.Rttm.Web"> >>>> >>>> <factory id="nhibernate.factory.session1"> >>>> <settings> >>>> <item key="show_sql">true</item> >>>> <item key="connection.provider"> >>>> NHibernate.Connection.DriverConnectionProvider >>>> </item> >>>> <item key="connection.driver_class"> >>>> NHibernate.Driver.SqlClientDriver >>>> </item> >>>> <item key="connection.connection_string"> >>>> Data Source=.;Initial Catalog=Reporting1;User Id=sa;Password=xxx; >>>> </item> >>>> <item key="dialect"> >>>> NHibernate.Dialect.MsSql2005Dialect >>>> </item> >>>> <item key="proxyfactory.factory_class"> >>>> NHibernate.ByteCode.Castle.ProxyFactoryFactory, >>>> NHibernate.ByteCode.Castle >>>> </item> >>>> </settings> >>>> <assemblies> >>>> <assembly>Ideal.Rttm.Model</assembly> >>>> </assemblies> >>>> </factory> >>>> >>>> <factory id="nhibernate.factory.session2" alias="reporting"> >>>> <settings> >>>> <item key="show_sql">true</item> >>>> <item key="connection.provider"> >>>> NHibernate.Connection.DriverConnectionProvider >>>> </item> >>>> <item key="connection.driver_class"> >>>> NHibernate.Driver.SqlClientDriver >>>> </item> >>>> <item key="connection.connection_string"> >>>> Data Source=.;Initial Catalog=Reporting2;User Id=sa;Password=xxx; >>>> </item> >>>> <item key="dialect"> >>>> NHibernate.Dialect.MsSql2005Dialect >>>> </item> >>>> <item key="proxyfactory.factory_class"> >>>> NHibernate.ByteCode.Castle.ProxyFactoryFactory, >>>> NHibernate.ByteCode.Castle >>>> </item> >>>> </settings> >>>> <assemblies> >>>> <assembly>Ideal.Reporting.Model</assembly> >>>> </assemblies> >>>> </factory> >>>> >>>> </facility> >>>> <facility id="atm" >>>> type="Castle.Facilities.AutomaticTransactionManagement.TransactionFacility, >>>> Castle.Facilities.AutomaticTransactionManagement" /> >>>> </facilities> >>>> </castle> >>>> >>>> </code> >>>> >>>> has anyone used the nh facility to do this? >>>> >>>> On Thu, Oct 15, 2009 at 3:48 PM, Valeriu Caraulean <[email protected]> >>>> wrote: >>>>> >>>>> Different connection strings? >>>>> I mean, are they different? >>>>> >>>>> On Thu, Oct 15, 2009 at 11:49 AM, Wayne Douglas <[email protected]> >>>>> wrote: >>>>>> >>>>>> Hi >>>>>> >>>>>> I'm using the nh facility to configure the following setup: >>>>>> >>>>>> i have 1 database which stores generic report configuration. >>>>>> and another which stores the actual report data. >>>>>> >>>>>> i also have 1 project for interacting with the report configuration >>>>>> database (entities and mappings etc) >>>>>> and another for interacting with the report data database (entities >>>>>> and mappings etc). >>>>>> >>>>>> i've used the following to create 2 factories: >>>>>> >>>>>> <code> >>>>>> >>>>>> <facilities> >>>>>> <facility id="nhibernate"> >>>>>> <factory id="nhibernate.factory.session1"> >>>>>> ... >>>>>> <assemblies> >>>>>> <assembly>ReportData.Model</assembly> >>>>>> </assemblies> >>>>>> </factory> >>>>>> >>>>>> <factory id="nhibernate.factory.session2" alias="reporting"> >>>>>> ... >>>>>> <assemblies> >>>>>> <assembly>Reporting.Model</assembly> >>>>>> </assemblies> >>>>>> </factory> >>>>>> </facility> >>>>>> </facilities> >>>>>> >>>>>> <code> >>>>>> >>>>>> the problem is is that even though nhibernate.factory.session1 and >>>>>> nhibernate.factory.session2 are looking at different databases and >>>>>> have different assemblies configured it always seems to create the >>>>>> tables for both models in both DBs? >>>>>> >>>>>> how do i tell nhibernate.factory.session1 to look at db1 and model1 >>>>>> and nhibernate.factory.session2 to look at db2 and model2? >>>>>> >>>>>> >>>>>> -- >>>>>> Cheers, >>>>>> >>>>>> w:// >>>>>> >>>>>> > >>>>>> >>>>> >>>>> > >>>>> >>>>> >>>> >>>> >>>> >>>> -- >>>> Cheers, >>>> >>>> w:// >>>> >>>> > >>>> >>> >>> > >>> >>> >> >> >> >> -- >> Cheers, >> >> w:// >> >> > >> > > > > > -- Cheers, w:// --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Castle Project Users" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/castle-project-users?hl=en -~----------~----~----~----~------~----~------~--~---
