More about datasets

The convenience of being able to visually design the queries and DML statements, while wonderful, is not without its cost.  So far what I'm discovering is:

  • Datasets introduce another state layer between the data model and the database. 

    • They must therefore be initialized.
    • Concurrent access must be serialized/synchronized to prevent corruption.
    • Rolled back transactions need to be accompanied by RejectChanges().

  • Since a DataAdapter is usually necessary to manage each table/query, changing the table structure means changing/updating the corresponding DataAdapter.

    • The "Configure DataAdapter wizard" makes this pretty easy.

It would be nice to have the benefits of the visual query designer w/o having to create a DataSet... Dragging the SqlCommand onto the component/form surface perhaps?

No comments:

Post a Comment