Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
ASP.NET 2.0 / 3.5 / 4.0
Uo TransactionScope
venerdì 04 giugno 2010 - 12.01
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
cicemoi
Profilo
| Junior Member
72
messaggi | Data Invio:
ven 4 giu 2010 - 12:01
Salve,
sto provando ad utilizzare la classe TransactionScope per mettere in transazione il metodo CreateUser di .Net con un altro metodo creato ad hoc da me per inserire tutte le altre informazioni dell'utente
sto procendo in questo modo:
using (TransactionScope txScope = new TransactionScope())
all'interno del quale richiamo il metodo "Membership.CreateUser " e il mio metodo oUtenti.Insert_utente() che usa a sua volta una sua connessione
volevo sapere
1. se in questo modo il suo uso è corretto
2. in caso di successo di entrambe le operazioni per fare il commit si usa il metodo "txScope.Complete()"
3. in caso di insuccesso delle operazioni come si fa il rollback? con il "txScope.Dispose()" ?
grazie mille
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
ven 4 giu 2010 - 14:41
>Salve,
Ciao
>volevo sapere
>1. se in questo modo il suo uso è corretto
immagino che sotto alla definizione ed all'istanziazione del TransactionScope ci sia quella della connessione e poi del comando eventuale.. In tal caso, direi di sì, e lo vedi anche da questo link:
http://msdn.microsoft.com/en-us/library/system.transactions.transactionscope.complete.aspx
>2. in caso di successo di entrambe le operazioni per fare il commit si usa il metodo "txScope.Complete()"
>3. in caso di insuccesso delle operazioni come si fa il rollback? con il "txScope.Dispose()" ?
Il metodo complete, decide se fare commit o rollback:
"The Complete method commits the transaction. If an exception has been thrown, Complete is called and the transaction is rolled back."
Dipende dallo stato della transazione. il pattern è di solito:
try
using TransactionScope
fai operazioni
complete()
end using
end try
catch..
in poche parole se non fa la complete la transazione non è committata. E viene rollbackata..
>grazie mille
di nulla!
--
Alessandro Alpi | SQL Server MVP
MCP|MCITP|MCTS|MCT
http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !