Having all of the above functionality work out of the box
against your ORM data model is great for quickly getting your site up and
running. Once you get the basic site experience working, you can
optionally go in and fully customize it - both at the data validation/business
logic level as well as at the UI layer.
You can add standard LINQ to SQL data model and business
validation rules to your data model in order to enforce constraints. The
dynamic data pages will automatically work off of this logic, and provide
appropriate error messages and validation UI based on them.
You can also optionally go in and customize the UI of any of
the data pages you want. Dynamic data projects allow you to customize the
default look and feel of all data pages on the site, as well as customize the
default look and feel of all column types used on the site. You can
customize both of these via the default template files added under the
"/App_Shared" folder when you create a new dynamic data project:
Figure 12
Simply edit any of the files above to
customize the default data page views and/or default data column
appearances.
You can also then optionally override the UI
of specific data view pages by explicitly adding a .aspx page that maps to it
in your project. For example, I could override the default ListDetails
behavior for Products by adding a \Products\ListDetails.aspx page to my
project:
Figure 13
You can then add any standard ASP.NET data control to the
page. You can also use the new dynamic data aware ASP.NET data controls
that ship in the ASP.NET 3.5 Extensions CTP to the page. These allow you
to completely customize the look and feel of the UI - while still using the new
dynamic meta-data provider to infer relationships and meta-data about your data
model classes for default behavior.