Hello  CompuFit:

I don't know if this
http://nhforge.org/wikis/howtonh/dynamically-change-user-info-in-connection-string.aspx
can
help you

Oscar

2010/10/14 CompuFit <[email protected]>

> Hey,
>
> I have this project where a user must log in into his account and then
> they can create contacts in their database.
> There is 1 global connectionstring > for checking if the user is
> valid.
> When the user is valid, it has its own connectionstring.
>
> Example:
> User ID=sa;Password=test;Data Source=db_general;Initial
> Catalog=database > general connectionstring
> User ID=sa;Password=test;Data Source=db_user1;Initial Catalog=database
> > connectionstring for user 1
> User ID=sa;Password=test;Data Source=db_user2;Initial Catalog=database
> > connectionstring for user 2
>
> For now I use only 1 connectionstring. Like this:
> In the hibernate.cfg;xml
> <?xml version="1.0" encoding="utf-8" ?>
> <hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">
> <session-factory>
> <property
> name="connection.driver_class">NHibernate.Driver.SqlClientDriver</
> property>
> <property name="connection.connection_string">User
> ID=sa;Password=test;Data Source=db_general;Initial Catalog=database</
> property>
> <property name="adonet.batch_size">10</property>
> <property name="show_sql">true</property>
> <property name="dialect">NHibernate.Dialect.MsSql2008Dialect</
> property>
> <property name="command_timeout">60</property>
> <property
>
> name="proxyfactory.factory_class">NHibernate.ByteCode.LinFu.ProxyFactoryFactory,
> NHibernate.ByteCode.LinFu</property>
> <property
> name="connection.provider">NHibernate.Connection.DriverConnectionProvider</
> property>
> </session-factory>
> </hibernate-configuration>
>
> Getting data, for example:
> CtInfo.cs > contact
> public static CtInfo GetById(int? pId)
>        {
>            using (ISession session = SessionHelper.OpenSession())
>            {
>                return session.Get<CtInfo>(pId);
>            }
>        }
>
> SessionHelper.cs:
>
>  private static ISessionFactory _sessionFactory;
>        private static ISessionFactory SessionFactory
>        {
>            get
>            {
>                if (_sessionFactory == null)
>                {
>                    Configuration config = new
> Configuration().Configure();
>                    config.AddAssembly(typeof(CtInfo).Assembly);
>                    _sessionFactory = config.BuildSessionFactory();
>                    if (_sessionFactory == null)
>                        throw new InvalidOperationException("Could not
> build SessionFactory");
>                }
>                return _sessionFactory;
>            }
>        }
>  public static ISession OpenSession()
>        {
>            ISession session = SessionFactory.OpenSession();
>            if (session == null)
>                throw new InvalidOperationException("Cannot open
> session");
>
>            return session;
>        }
>
> The connectionstring is automatically given to SessionFactory. Do I
> need to create a new SessionFactory for each user?? Or is there a
> better way?
> Like something like this
>
> public static CtInfo GetById(int? pId, string pConnectionString)
>        {
> //give connectionstring to session factory??
>
>
> Thanks in advance.
> CompuFit.
>
> --
> You received this message because you are subscribed to the Google Groups
> "nhusers" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected]<nhusers%[email protected]>
> .
> For more options, visit this group at
> http://groups.google.com/group/nhusers?hl=en.
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"nhusers" 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/nhusers?hl=en.

Reply via email to