2010-04-02 6 views
0

0 vote down étoilesMise à jour sur le bouton DataBase clic, après avoir modifié gridview (sauvegarde pas automatiquement DB, mais après confirmation sur un événement) dans les transactions à l'aide

J'utilise GridView en asp .net et des données d'édition avec éditer propriété de champ de commande (comme nous le savons après la mise à jour, nous mettons à jour automatiquement la base de données), et je veux utiliser les transactions (avec l'instruction begin to commit - y compris rollback) pour valider cette requête dans la base de données. après certains événements par exemple), pas automatiquement pour insérer ou mettre à jour les données éditées de la grille directement à la base de données ... donc je veux les enregistrer quelque part temporaire (même plusieurs lignes éditées - pas seulement une ligne) et ensuite confirmer la transaction - pour mettre à jour les tables réelles dans la base de données ...

Je l'ai utilisé quelques bons liens, mais très utile, comme:

http://www.asp.net/learn/data-access/tutorial-63-cs.aspx

http://www.asp.net/learn/data-access/tutorial-66-cs.aspx etc... etc ...

Répondre

3

Eh bien, il y a beaucoup d'options pour enregistrer les données, session, cache , Fichier XML, mais la chose dont vous devez faire attention est de maintenir l'association entre les données mises en cache et le traitement par lots. Session ou cache vous devez être concerné par les délais d'expiration; disk IO est assez sûr, bien que vous ayez juste à maintenir l'association entre les données sauvegardées et l'utilisateur. Combien de temps voulez-vous sauvegarder les entrées précédentes?

D'autres choses à considérer sont ce que si elles ferment le navigateur et reviennent? Vous pouvez lier les données à l'ID de session d'un utilisateur, mais si cette session se ferme ou redémarre (en émettant un nouvel ID), l'utilisateur devra recommencer ...

Vous pouvez lier des données au nom d'utilisateur, si vous avez besoin d'une authentification, puis lisez simplement les fichiers de la session, du cache, de l'E/S du disque, etc. pour obtenir les données précédemment sauvegardées et rechargez-les quand elles reviennent. Cela dépend de combien de temps vous voulez stocker les données, est-ce que cela prend naturellement du temps si elles ne parviennent pas à les soumettre? Si deux jours plus tard, devraient-ils être en mesure de revenir et de commencer là où ils s'étaient arrêtés?

HTH.

+0

Très belle explication Brian +1 pour vous :-) – Raja

+0

Très bonne explication Brian et des informations utiles! Merci! – gaponte69