I just wanted to post a better answer on an issue that was mentioned in one of the locked forum entries:
http://p2p.wrox.com/topic.asp?TOPIC_ID=9049
This is a complaint about the inability to access a Deleted row in a DataTable, even to get its key values to build a SQL DELETE statement.
A solution to this (and the correct one, I think), at least in VS2005, is to set the RowVersion you want.
E.G. if "row" is deleted:
string key = row["KeyColumnName"] -- does not work and causes DeletedRowInaccessibleException.
string key = row["KeyColumnName", DataRowVersion.Original] -- does correctly work without errors.
Hope this helps someone. Took me a bit to figure it out. Makes sense that you can only access the original values of a deleted row, since it does not have any current values.