title: GetChanges() Or RowState to get all changes of a datatable?
body: <p>In a <strong>Winforms</strong> application I have to <strong>log all changes in datagrid (datatable)</strong>. In other words I want to to get all changes, since it has been loaded. For this I want to use <strong>Datatable.GetChanges()</strong>. I know, that with <strong>GetChanges()</strong> I get a datatable containing a copy of all rows in the original DataSet that have pending changes. </p>
  
  <p>My question is now, if it is also possible to get more <strong>additional information of the changes</strong>. For example I want to know if a <strong>row</strong> has been <strong>added</strong> or <strong>deleted</strong> or only has been <strong>updated</strong>. If a row has been <strong>updated</strong> I also want to know which cells has been updated? Is there a way to get all this information quickly or does I have to do a <strong>deep comparison</strong> row by row with the <strong>original datatable</strong>?</p>
  
  <p>Or is it better to use <strong>RowState</strong> to get all changes?</p>