Alfred:
A DataView is another type of tool. In some cases, a DataView is a superb
tool and in others, it's not so good of a tool. DataTable.Select and
DataView.RowFilter provide similar funtionality. I think a good comparison
for this case can be found in a comparison between a typical, regular
screwdriver and a ratcheting screwdriver with a replacable bit set. The
regular screwdriver doesn't give as much flexibility as the ratcheting
screwdriver with a replacable bit set but there are times when it just works
better.
As you've noticed, DataTable.Select returns an array of DataRows while
DataView.RowFilter provides a "mask" of a DataTable. When all you want is a
listing of rows where the value of a column is "X" then DataTable.Select
works fine but if you want to easily/quickly determine which rows have been
changed, using the RowStateFilter property of the DataView class is what
you're looking for. Also keep in mind that the DataView provides native
support for other common tasks like data sorting along with direct access to
the base table (rows cannot be added to a DataTable via a DataRow array for
example). Like the ratcheting screwdriver, there is a lot of functionality
that is provided by the DataView class but in some situations, it's just too
much.
You may want to consider reading up on the DataView class at
http://msdn.microsoft.com/library/d...ef/html/frlrfsystemdatadataviewclasstopic.asp.
I'd recommend getting up to speed on the members specifically to learn of
all of its functionality.
Hopefully this helps clear up your confusion.
Dave Fancher