Book Image

NHibernate 3 Beginner's Guide

By : Dr. Gabriel Nicolas Schenker, Aaron Cure
Book Image

NHibernate 3 Beginner's Guide

By: Dr. Gabriel Nicolas Schenker, Aaron Cure

Overview of this book

<p>Ideally, we would want to persist the objects our application uses and produces AS IS, without having to first transform them in complex ways. NHibernate is a framework that provides us with an object-oriented access to a relational database without having to write SQL and with little or no database-specific data access code. Definitely, if you are a .NET developer, knowing more about NHibernate will simplify and reduce your efforts in developing .Net applications.<em>NHibernate 3 Beginner's Guide</em> introduces Nhibernate with step-by-step examples, and is the easiest way to learn about bridging the gap between object-oriented .NET applications and the relational database that stores the application's data. It is a beginner's guide to NHibernate that starts from scratch. Successive chapters build upon earlier concepts, while the sample code presents various ways to accomplish typical data access tasks.</p> <p><em>NHibernate 3 Beginner's Guide</em> examines all of the topics required to get a functional data access layer implemented while writing the least amount of code possible, presenting options along the way to handle particular edge cases or situations as they arise. The book begins with an introduction to NHIbernate 3 and then moves on to creating the development environment. Then it teaches you how to create a model, define a database schema, and map the model to the database then covers sessions and transactions. This is succeeded by testing, profiling, and configuration, validation of data and writing queries. Finally, we wrap up with notes on the common pitfalls that you should avoid.</p> <p>Once you complete reading the book, you will have gained the skills and knowledge to incorporate NHibernate into your own applications.</p>
Table of Contents (19 chapters)
NHibernate 3 Beginner's Guide
Credits
About the Authors
About the Reviewers
www.PacktPub.com
Preface
Index

Chapter 11. Common Pitfalls—Things to Avoid

After having learned so much about NHibernate, it is time to think about some scenarios which can lead us to use NHibernate in the wrong way if we do not pay attention and can lead to a system which is unsatisfactory. One of the most obvious side effects of wrong usage or configuration of NHibernate is bad performance. Our application starts to crawl and in some situations even times out.

In this chapter we shall discuss some of the most frequent mistakes developers make when using NHibernate. We will also show how to do it right. The topics discussed are:

  • Avoid mappings that are too verbose or inefficient

  • Wrong mapping for read-only access

  • Never blindly rely on NHibernate but rather make informed decisions

  • The anti-pattern of using implicit transactions

  • Why not to use database generated IDs

  • Using LINQ to NHibernate the wrong way

  • How to avoid troubles with lazy loading

  • Considering using a read and a write model in complex domains

  • Phantom updates and what...