>OK, I've got it. But isn't the developer in essence rolling his or her own by specifying the DataAdapter's UpdateCommand property? Hmmm, let me guess -- you don't always want the same command?No, it's just that you have better control over the process. Say you have inserted all new data into a DataSet that has many-to-many relationships (we don't use DataSet relationships either, that's another topic <g>). You'd need to update one parent row, then each of it's child rows (after propagating the new PK into the FK of the child rows), and then do the same for the next parent row,etc. I don't think the .Update() method can handle that scenario (although, I might be wrong about that ... not sure what happens if you actually use DataSet relationships).
~~Bonnie
Plus, having passed the changed data as XML through a web service and then populating a DataSet with that on the server-side (this is how we do this, not everyone does I guess), we lose the rowstate of the data. IOW, there's no way to tell an Update from an Insert, so DataAdapter.U
>
>Don't worry about me misunderstanding, that's a frequent occurrence as I learn .NET <g>. Some days I feel like a blind man feeling my way around this gigantic framework.
>
>>You misunderstand ... it's not that I don't like DataAdapter ... au contraire! What I take exception to is using the DataAdapter.Update() method. As Mike Cole does, I also prefer to "roll my own" ... and I do use the DataAdapter for that.
>>
>>~~Bonnie
>>
>>
>>
>>>>As Mike Cole said:
>>>>
>>>>
... you need to configure all 4 commands (select, insert, update, delete) of your data adapter. I would rather handle this manually instead of relying on the DataAdapter, but to each their own. >>>>
>>>>And I agree with him 100%! <g>
>>>>
>>>
>>>As a rank beginner with ADO, I kind of like the architecture -- the DataSet as the database-like object in memory that the GUI works with and the DataAdapter as the piece that handles direct interaction with the data source. Seems like a good separation of responsibilities to me. We all know the devil's in the details, though, so can you say why you don't like DataAdapters? ("Evidently" <g>).