An ADO.Net DataAdapter Update Philosophy Question for the MS gurus 
Author Message
 An ADO.Net DataAdapter Update Philosophy Question for the MS gurus

OK, we're working with disconnected data.  You can allow the user to make
changes, then update all at once.  This certainly saves a good bit of
traffic across the network.

My problem with the approach is that it is completely foreign to the way
users think.  A user would assume they were making changes to the data
source.  If they did about an hour's worth of work skipping all around the
dataset changing records and then had their system crash before any changes
were committed to the data source, I suspect they would be a bit upset.

So the question is, when do you commit changes and how?  Do you make the
user do it?  Do you set up a timer and do it every few minutes (and if you
do that, how does it affect the change a user is currently making?)?  Do you
just warn the user about what's happening, and tell them to beware?

Any insights appreciated -- even if you aren't a MS guru
Marty



Tue, 04 Jan 2005 10:20:56 GMT  
 An ADO.Net DataAdapter Update Philosophy Question for the MS gurus
Hi Marty,
This is generic problem with disconnection that people have been grappling
with since ADO came about.  This is how I handle the issue in the programs
that I have written.

I fire off an update after the user has changed the row they are working on.
All of my updates are run through Stored procedures (SQL Server is my
database) .  Each of my tables have a timestamp column which I pass to the
stored procedure.  The stored procedure first checks the records timestamp
against the one I pass.  If they are equal then no one else has updated the
record, I then update the record and return the new timestamp. If the
timestamp was different I return an error number( I usually use -1 for
change record). The Client program then handles the results a change
conflict will notify the user and refresh the current record.

One thing

Quote:
> OK, we're working with disconnected data.  You can allow the user to make
> changes, then update all at once.  This certainly saves a good bit of
> traffic across the network.

Disconnected doesn't really save that much traffic.  What it does do is free
up resources on backend servers.  This then has the effect of making
application more scalable and allows server manufactures to quote
overenflated connection figure ;)

--
I hope this helps
regards
Greg O MCSD
Document any SQL server database
version 2.2, the best just got better and even cheaper (new price for SQL
Scribe)
AGS SQL Scribe http://www.ag-software.com/ags_scribe_index.asp


Quote:
> OK, we're working with disconnected data.  You can allow the user to make
> changes, then update all at once.  This certainly saves a good bit of
> traffic across the network.

> My problem with the approach is that it is completely foreign to the way
> users think.  A user would assume they were making changes to the data
> source.  If they did about an hour's worth of work skipping all around the
> dataset changing records and then had their system crash before any
changes
> were committed to the data source, I suspect they would be a bit upset.

> So the question is, when do you commit changes and how?  Do you make the
> user do it?  Do you set up a timer and do it every few minutes (and if you
> do that, how does it affect the change a user is currently making?)?  Do
you
> just warn the user about what's happening, and tell them to beware?

> Any insights appreciated -- even if you aren't a MS guru
> Marty



Tue, 04 Jan 2005 10:36:55 GMT  
 An ADO.Net DataAdapter Update Philosophy Question for the MS gurus
Thanks for the input.  Your suggestions were very helpful


Quote:
> Hi Marty,
> This is generic problem with disconnection that people have been grappling
> with since ADO came about.  This is how I handle the issue in the programs
> that I have written.

> I fire off an update after the user has changed the row they are working
on.
> All of my updates are run through Stored procedures (SQL Server is my
> database) .  Each of my tables have a timestamp column which I pass to the
> stored procedure.  The stored procedure first checks the records timestamp
> against the one I pass.  If they are equal then no one else has updated
the
> record, I then update the record and return the new timestamp. If the
> timestamp was different I return an error number( I usually use -1 for
> change record). The Client program then handles the results a change
> conflict will notify the user and refresh the current record.

> One thing
> > OK, we're working with disconnected data.  You can allow the user to
make
> > changes, then update all at once.  This certainly saves a good bit of
> > traffic across the network.
> Disconnected doesn't really save that much traffic.  What it does do is
free
> up resources on backend servers.  This then has the effect of making
> application more scalable and allows server manufactures to quote
> overenflated connection figure ;)

> --
> I hope this helps
> regards
> Greg O MCSD
> Document any SQL server database
> version 2.2, the best just got better and even cheaper (new price for SQL
> Scribe)
> AGS SQL Scribe http://www.ag-software.com/ags_scribe_index.asp



> > OK, we're working with disconnected data.  You can allow the user to
make
> > changes, then update all at once.  This certainly saves a good bit of
> > traffic across the network.

> > My problem with the approach is that it is completely foreign to the way
> > users think.  A user would assume they were making changes to the data
> > source.  If they did about an hour's worth of work skipping all around
the
> > dataset changing records and then had their system crash before any
> changes
> > were committed to the data source, I suspect they would be a bit upset.

> > So the question is, when do you commit changes and how?  Do you make the
> > user do it?  Do you set up a timer and do it every few minutes (and if
you
> > do that, how does it affect the change a user is currently making?)?  Do
> you
> > just warn the user about what's happening, and tell them to beware?

> > Any insights appreciated -- even if you aren't a MS guru
> > Marty



Thu, 06 Jan 2005 20:34:09 GMT  
 
 [ 3 post ] 

 Relevant Pages 

1. DataAdapter.FillSchema method of ADO.NET

2. ASP.NET update task in MS Project Server and MS Project

3. Visual Basic .NET and ADO.NET code - Disconnected Updating Help

4. MS ADO Guru Needed

5. Error with dataadapter.update(dataset) in vb

6. vb.net / ado.net design question

7. Transactions and calling Update on DataAdapters

8. DataAdapter.Update and SQL Server Default Values

9. Newbie question (ado.net / vb.net)

10. DataAdapter updating

11. Programming Philosophy Question

12. An object development philosophy question

 

 
Powered by phpBB® Forum Software