The easiest way to bring your “application to the modern era” is to simply upgrade your code from Visual Studio 2003 to 2005 or 2008. If you want to add behavior to your classes ("what could have been business objects") the fact that DataSet, DataTable and DataRow are implemented as partial classes, you will get this.
The above solutions lose a lot of things for you, including tracking changes, if only what you are looking for - to deviate to a large extent. LINQ to SQL, Entity Framework, etc. They provide change tracking, but within the "Unit of work" mechanism for connecting to db instead of placing the Unit of work tracking directly on your objects, as with DataRow.
I hope you do not just change your application to the modern era, and you have some advantages that you are trying to get for the functions that you pass and the efforts that you spend?
By the way, all this assumes that you are using Typed DataSets ... Untyped DataSet objects seem to be silly, in my opinion, for most purposes.
source share