Menu Zamknij

Pierwsze kroki z NHibernate

Utworzenie obiektu biznesowego

Pierwszym krokiem jest utworzenie obiektów biznesowych. Na potrzeby tego małego tutoriala, przytoczę tu tylko jeden, dla przykładu. Należy pamiętać że każda właściwość naszego modelu, musi być wirtualna, w przeciwnym wypadku NHibernate wyrzuci nam błąd. Tak prezentuje się obiekt Order:

Mając już utworzone obiekty biznesowe, należy powiązać je z bazą danych i tutaj z pomocą przychodzi nam ORM.

Tworzenie bazy danych

Na początku w Visual Studio stworzyłem bazę danych w okienku Server Explorer, klikając na Data connections i wybierając Add Connection… W nowym oknie, możemy albo wybrać już istniejącą bazę danych, albo utworzyć nową wpisując jej nazwę z rozszerzeniem .mdf

Następnym krokiem jest dodanie tabeli do naszej bazy danych. Robimy to za pomocą poniższego zapytania SQL, tak by w końcowym efekcie otrzymać to samo, ci widzimy poniżej. Skrypt zatwierdzamy przyciskiem Update. Tak jak poprzednio, posłużę się przykładem obiektu Order.

Konfiguracja

Konfiguracja NHibernate odbywa się poprzez utworzenie pliku hibernate.cfg.xml, w którym będą zawarte wszystkie informacje służące konfiguracji naszego ORMa. W zależności od bazy danych z jakiej korzystamy musimy odpowiednio zmienić dialect oraz connection.driver_class, jednakże po więcej informacji odsyłam do dokumentacji. W polu connection.connection_string, należy podać connection string, który możemy znaleźć klikając w okienku Server Explorer, na naszą bazę danych i wybierając properties.

Kolejnym kroku musimy przygotować plik .xml odpowiadający za mapowanie naszego obiektu, w tym wypadku nasz plik musi nazywać się Order.hbm.xml. Plik ten umieściłem w osobnym folderze „Mappings”.

Ostatnim krokiem jest utworzenie klasy NHibernateSession, której zadaniem będzie tworzenie obiektów sesji.

To już wszystko, co należy zrobić aby móc zacząć zabawę z NHibernate. Oczywiście są to podstawy zabawy z NHibernate, ponieważ możemy dodać klasę SessionFactory, która będzie odpowiedzialna za tworzenie obiektów sesji, ale to już innym razem.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *