Sorry about posting the link and not source here.

Yes, I got some tests and it manages correctly each session to only one
thread.

Thanks,
--
Rafael Mueller
http://queroseragil.wordpress.com


On Sun, Sep 12, 2010 at 10:00 PM, Diego Mijelshon <[email protected]>wrote:

> I didn't want to follow the code, but as long as it returns the session
> correctly for each thread... go with it.
>
>     Diego
>
>
>
> On Sun, Sep 12, 2010 at 21:52, Rafael Mueller <[email protected]>wrote:
>
>> I have a Session property on myRepository
>>
>>         private virtual ISession Session
>>         {
>>             get
>>             {
>>                 return
>> NHibernateSessionFactory.CurrentFor(NHibernateSessionFactory.DefaultFactoryKey);
>>             }
>>         }
>>
>> NHibernateSessionFactory is based on
>> http://github.com/codai/Sharp-Architecture/blob/master/src/SharpArch/SharpArch.Data/NHibernate/NHibernateSession.cs
>>
>> Regards,
>> --
>> Rafael Mueller
>>
>>
>>
>> On Sun, Sep 12, 2010 at 9:45 PM, Diego Mijelshon 
>> <[email protected]>wrote:
>>
>>> It looks ok... how does myRepository get the session?
>>>
>>>     Diego
>>>
>>>
>>> On Sun, Sep 12, 2010 at 17:13, Rafael Mueller <[email protected]>wrote:
>>>
>>>> Hi Guys,
>>>>
>>>> I'm starting a project with nhibernate 3 (alpha2), and would like to
>>>> check with you if my session management is right.
>>>>
>>>> The project is a windows service, running a lot of small threads.
>>>> I create like 15 ~20 new threads every 60 seconds, each thread lives for
>>>> 10~40 seconds.
>>>> Each thread usually load/updates 10~100 entities.
>>>>
>>>> Currently, everytime I start a new thread, I also start a session and a
>>>> transaction.
>>>> The code looks like this:
>>>>
>>>> public void ValidateEntities(){
>>>>    // creates a new session and a new nhibernate transaction, UnitOfWork
>>>> is just a wrapper around nhibernate session
>>>>     using(var uow = UnitOfWorkFactory.Create()){
>>>>       try{
>>>>          var entities = myRepository.LoadAllEntitiesWithStatusX();
>>>>          // some processing on entities
>>>>         uow.commit();
>>>>       } catch (Exception e){
>>>>          uow.Rollback();
>>>>          throw;
>>>>       }
>>>>    }
>>>> }
>>>>
>>>> That's a correct way to do this?
>>>> Any tips to improve the code?
>>>>
>>>> Regards,
>>>> Rafael
>>>>
>>>> --
>>>> 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]<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]<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]<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