Steve,
>Thanks for all the info in this thread :)You're welcome ... I'm glad people are getting a lot out of this. =)
>How do you handle differences in between the normalized relational database and how entities may be mapped within the business object? For example, let's say there is an Invoice BO, where you are going to store the custid in the invoice table, but not the customers address. Does your GetInvoice() return a flattened dataset (for the invoice header), containing the customer address, or does the dataset have separate tables containing all of the relationships that might exist in an Invoice?It definitely depends on what you're doing with the data ... for reporting or maybe for displaying in a grid, perhaps having it all in one table is good. But for the most part (for data entry) I try to keep the tables intact, so I'd have a DataSet containing several tables rather than de-normalizing it all into one table.
~~Bonnie