DiffGram is one of the two XML formats that you can use to render DataSet
object contents to XML. A good use is reading database data to an XML file to
be sent to a Web Service.
DiffGrams and DataSet
occasions when you want to compare the original data with the current data to
get the changes made to the original data. One of the common example is saving
data on Web Forms applications. When working with Web based data driven
applications, you read data using a DataSet, make some changes to the data and
sends data back to the database to save final data. Sending entire DataSet may
be a costly affair specially when there are thousands of records in a DataSet.
In this scenario, the best practice is to find out the updated rows of a
DataSet and send only updated rows back to the database instead of the entire
DataSet. This is where the DiffGrams are useful.
Note: Do you remember GetChanges method of DataSet? This method returns the
rows that have been modified in the current version in a form of DataSet. This
is how a DataSet knows the modified rows.
A DiffGram is an XML format that is used to identify current and original
versions of data elements. Since the DataSet uses XML format to store and
transfer data, it also use DiffGrams to keep track of the original data and the
current data. When a DataSet is written as a DiffGram, not only a DiffGram
stores original and current data, it also stores row versions, error
information, and their orders.