Przy okazji rozpoczęcia nowego projektu chciałem w prosty sposób umożliwić budowę projektu z linii komend. Do tej pory używałem do tego NAnta, ale tym razem chciałem dać szansę narzędziu, z którego korzysta wiele projektów open-source: Rake.
Strona głównaUżytkownik
wolan | użytkownik
Próba zapisania obiektu naruszającego więzy integralności przy użyciu biblioteki NHibernate spowoduje wygenerowanie wyjątku GenericADOException. Dopiero sięgając do wartości właściwości InnerException możemy przekonać się, co jest przyczyną niepowodzenia. Istnieje jednak sposób na zastąpienie standardowego wyjątku własnym.
Bazy danych i XML 5368 dni, 3 godziny, 46 minut temu 58 źrodło rozwiń
Standardowe komunikaty w bibliotece NHibernate.Validator nie są zbyt przyjazne dla użytkownika. Można dostosować je do własnych potrzeb poprzez pliki zasobów.
W Oracle nie ma możliwości przechowywania wartości typu bool. Najbardziej powszechnym rozwiązaniem jest użycie kolumny typu CHAR(1) z wartościami 'Y' i 'N'. Autorzy NHibernate się na to przygotowali udostępniając typ YesNo. Mój przypadek był inny. Z bazy danych korzystała już aplikacja, która wartości typu bool zapisywała w kolumnach typu INT. Wartość true zdefiniowana była jako -1, wartość false - 0. Moja miała robić tak samo. Da radę. Tylko niestety trzeba się trochę napisać.
Bazy danych i XML 5450 dni, 2 godziny, 57 minut temu 62 źrodło rozwiń
Może czasem się zdarzyć, że chcemy użyć NHibernate, jednak aplikacja korzysta z jakiegoś frameworka, który ma już swoją definicję połączenia z bazą danych. Po co więc w NHibernate ponownie konfigurować to samo połączenie, skoro można wykorzystać już istniejące.
Jednym z moich ulubionych narzędzi w systemie operacyjnym Linux jest apt. Aby zainstalować aplikację wystarczy w shellu wpisać apt-get install nazwa_aplikacji. Apt pobiera z repozytorium pakiet wraz z zależnościami i po krótkiej (lub dłuższej) chwili mamy aplikację gotową do uruchomienia. hornget jest takim apt dla programistów .NET. Dzięki niemu w prosty sposób można automatycznie uaktualnić binaria kilkunastu projektów używanych na codzień (m.in. NHibernate, NHContrib, MVCContrib, Rhino Tools).
Ostatnio przedstawiłem sposób konfiguracji i wykorzystania biblioteki NHibernate.Validator w aplikacji Windows.Forms. Po wypełnieniu formularza użytkownik otrzymywał jedynie informację, iż jest on wypełniony poprawnie/niepoprawnie. Warto byłoby oznaczyć błędnie wypełnione pola. W tym celu wykorzystam komponent ErrorProvider.
Wykorzystując bibliotekę NHibernate.Validator można w łatwy sposób poradzić sobie z walidacją obiektów w aplikacji desktopowej. Artykuł przedstawia przykład użycia biblioteki w aplikacji Windows Forms.