Wydzieliłem do biblioteki funkcjonalność związaną z obsługą użytkowników, mapowanie hbm z nHibernate oraz podstawowe funkcje: dodaj, usuń, czy podane hasło jest poprawne, ...
W głównej aplikacji mam klasę (singleton) odpowiedzialną za zestawienie połączenia z bazą danych. Dodaję tam assembly z obsługą użytkowników tak żeby mapowanie z nHibernate się dodały.
Przy tworzeniu obiektu UserRepository z mojej biblioteki przekazuje ISession z mojego singleton'u.
Czy takie podejście jest poprawne? Może są jakieś przykłady, które można podejrzeć :)