RE:object properties vs DataSets. Thats one of the big architectural decisions that I am trying to come to grips with.
DataSets work very well with distributed applications, XML, and working with collections of data, as Kevin points out.
OTOH, there are alot of people who use the properties approach, even Enterprise Javabeans maps all the database fields to object properties. I have some big reservations about this when it comes to marshaling. If your business object lives in another AppDomain, each time you get or set one of those properties its going to be a call across the marshaling boundry. If the business object lives on another machine its worse, each property access is going to be a call across the network too. If your business object is always instantiated in the same memory space as your UI code, then there is no problem.
There is a really good white paper on the Microsoft Architecture site that discusses some of these issues: "Designing Data Tier Components and Passing Data Through Tiers"
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnbda/html/BOAGag.asp>I use members and properties to access data fields in my business objects. If I had a way to get values from and save values to fields in the back end, I would not need to go through all this. At one point someone suggested I could use datasets to implement data access instead of the member/property scenario. What do you think?