This walk-through is analytical. It explains how the PhoneBook web application is built – in the hope that it serves impatient people better.
As explained in the overview, the PhoneBook's domain is very simple and easy to understand for everybody who has ever used a paper phonebook.
- Person-s have one address - a Location - and zero or more PhoneNumber|s
- Person-s can share an address, but not a PhoneNumber
The words in italics are domain object classes here, and together they constitute the domain of the PhoneBook application:
As explained in PhoneBook project structure, three sub-projects constitute the PhoneBook solution in Visual Studio:
PhoneBook.Domain– the domain project with all the domain's data and business logic
PhoneBook.Sample– the sample project for exercising the objects (or demonstrating their use)
PhoneBook.Web– the web project (foundation was laid by
PhoneBook.Web is the most elaborate project and requires most of the work. uigen.exe derives a bare-bones (but functional) web application from the
domain. What you are seeing in this project is the "embellished" version. Such polishing and customizing of a generated web app requires extra work.
PhoneBook.Domain -- learn to declare domain object classes
PhoneBook.Domain -- relationships
PhoneBook.Sample -- learn what makes domain object classes tick
PhoneBook.Web -- learn how to embellish the web application