Transaction – třída
Transakce zajistíte, že změny provedené do úložiště jsou zpracovány jako skupina, která může být potvrzena nebo vrácena zpět.
Hierarchie dědičnosti
System.Object
System.MarshalByRefObject
Microsoft.VisualStudio.Modeling.Transaction
Obor názvů: Microsoft.VisualStudio.Modeling
Sestavení: Microsoft.VisualStudio.Modeling.Sdk.12.0 (v Microsoft.VisualStudio.Modeling.Sdk.12.0.dll)
Syntaxe
'Deklarace
Public Class Transaction _
Inherits MarshalByRefObject _
Implements IDisposable
public class Transaction : MarshalByRefObject,
IDisposable
Typ Transaction zveřejňuje následující členy.
Vlastnosti
Název | Popis | |
---|---|---|
Context | Získá transakce a umožňuje klientům připojení dat uživatele k transakci. | |
ContextInstance | Získá Context pro tuto transakci. | |
ForceAllRulesToCommitTime | Získá nebo nastaví příznak, který vynutí všechny vnořené pravidla na LocalCommit čas pro aktuální transakci. | |
HasPendingChanges | Získá transakce a ověří, zda byly provedeny změny v úložišti během této transakce. | |
HaveCommitTimeRulesFired | Označuje, zda byly vypáleny pravidla potvrzení času nebo ne | |
Id | Získá Identifikátor pro tuto transakci. | |
InRollback | Získá transakce a ověří, zda je tato transakce vrácena zpět. | |
IsActive | Získá transakce a ověří, zda je tato transakce zpracování. | |
IsHidden | Získá transakce a ověří, zda transakce je skrytý. | |
IsNested | Získá transakce a ověří, zda transakce je vnořená uvnitř jiné transakce. | |
IsSerializing | Získá transakce a ověří, zda transakce je nyní serializace. | |
Name | Získá nebo nastaví název transakce. | |
Parent | Získá nejvyšší úrovně transakce přiřazené k vnořenou transakci. | |
PartitionStates | Získá informace o stavu všech oddílů v úložišti. | |
SequenceNumber | Získá pořadové číslo transakce. | |
Store | Získá úložiště, ke kterému je transakce patří. | |
TopLevelTransaction | Získá nejvyšší úrovně hierarchie transakce transakce. | |
TransactionDepth | Získá počet transakcí, ve kterých je vnořená transakce. |
Nahoru
Metody
Název | Popis | |
---|---|---|
Commit | Potvrzení transakce. | |
CreateObjRef | Kritické pro zabezpečení Vytvoří objekt, který obsahuje všechny příslušné informace potřebné pro generování proxy používají ke komunikaci s vzdálený objekt. (Zděděno z MarshalByRefObject.) | |
Dispose | Odstraňuje stav transakce. | |
Equals | Určuje, zda se zadaný objekt rovná aktuálnímu objektu. (Zděděno z Object.) | |
Finalize | Dokončí transakci. (Přepisuje Object.Finalize().) | |
GetHashCode | Slouží jako výchozí funkce hash. (Zděděno z Object.) | |
GetLifetimeService | Kritické pro zabezpečení Načte aktuální životnost objektu služby, ovládající zásady platnosti pro tuto instanci. (Zděděno z MarshalByRefObject.) | |
GetType | Získá Type aktuální instance. (Zděděno z Object.) | |
InitializeLifetimeService | Kritické pro zabezpečení Získá objektu životnost služby řízení zásad platnosti pro tuto instanci. (Zděděno z MarshalByRefObject.) | |
MemberwiseClone() | Vytvoří mělká kopie aktuálního Object. (Zděděno z Object.) | |
MemberwiseClone(Boolean) | Vytvoří kopii aktuální MarshalByRefObject objektu. (Zděděno z MarshalByRefObject.) | |
Rollback | Úložiště bude nastavena zpět do stavu, který byl v době byla transakce vytvořena. | |
ToString | Vrací řetězec, který představuje aktuální objekt. (Zděděno z Object.) |
Nahoru
Rozšiřující metody
Název | Popis | |
---|---|---|
GetSerializationContext | Získáte aktivní v kontextu transakce zadané SerializationContext.SerializationContext je uložen v TranactionContext serializace informačního transakce.Jestliže je vnořená transakce zásobníku transakce je prohledána najít nejbližší orámování serializace transakce se SerializationContext. (Definoval SerializationContextTransactionExtensions.) |
Nahoru
Poznámky
Transakce lze změny skupiny.Také vede záznamy o činnosti, které jsou provedeny v rámci transakce tak, aby bylo možné je později vrátit zpět.
Změny v úložišti, je třeba provést v rámci transakce.Úložiště změny pouze v případě, že transakce potvrzena.Transakce mohou být úložiště přijmout změny místní transakce nebo že nejvyšší úrovně je transakce potvrzena.Místní transakce jsou vnořeny v nejvyšší úrovni transakce.Vnořené transakce musí potvrdit nebo vrátit zpět před další nejvyšší úrovně transakcí můžete potvrdit nebo vrátit zpět.Další informace naleznete v příkladu pro TransactionDepth vlastnost.
Transakce také uchovává informace o akce, které nastaly.Díky tomu skupina akce vrátit zpět nebo provést znovu později se UndoManager vlastnost.
Transakce je uvolněn.To lze provést pomocí Dispose metoda nebo vytvořením transakce v Using konstrukce.Pokud transakce nebyla potvrzena, pokud je uvolněn, transakce automaticky vrácena zpět a změny budou zrušeny.
Příklady
Následující příklad ukazuje transakce, která mění v úložišti.Transakce je potvrzena.Pokud je transakce vrácena zpět, budou zrušeny všechny změny v úložišti.Transakce je automaticky odstraněny na konci using blok.
using (Transaction txCreateElem = model.Store.TransactionManager.BeginTransaction("Create named element")
{
A a = new A(store);
a.Name = "Fred";
// Commit the transaction and add the named element to the model
txCreateElem.Commit();
}
Další informace a příklady naleznete v tématu Using Transactions.
Bezpečný přístup z více vláken
Všechny veřejné členy static (Shared v jazyce Visual Basic) tohoto typu jsou bezpečné pro přístup z více vláken. Není zaručeno, že členy instancí jsou bezpečné pro přístup z více vláken.