O'Reilly logo
  • Nathan Want thinks this is interesting:

If you use lazy loading, more calls to the database happen through transparent calls to LINQ to SQL. For example, by default, if your DAL returns a Subject object and you access its Books property in your business logic or presentation layers, an implicit call to the database is done without your always being aware of it. A solution to avoid this is to return only detached objects (value objects), with lazy loading deactivated.

From

Cover of LINQ in Action

Note

Detach objects before passing to business layer