Almost everyone agrees that in all but
the smallest applications, it is important to avoid performing data
access directly from the ASP.NET Web Forms themselves. Accessing data
directly from within a Web Form inherently ties the user interface
code to the database and table schema that currently exist, making it
more difficult to reuse data-access code and maintain the user
interface code and backend data.
To keep the code as simple and straightforward as possible, the
examples in this chapter perform data access directly from the pages.
In a production application, this code should generally reside in
either data-tier or business-tier components, which should return
XML, a dataset, or some other database-independent structure to the
presentation tier for data binding. Remember that you should always
perform data calculations and modifications on a tier other than the