Sdílet prostřednictvím


Store – třída

Úložiště obsahuje v paměti zastoupení prvků a odkazy v jedné nebo více modelů.

Hierarchie dědičnosti

System.Object
  Microsoft.VisualStudio.Modeling.Store

Obor názvů:  Microsoft.VisualStudio.Modeling
Sestavení:  Microsoft.VisualStudio.Modeling.Sdk.11.0 (v Microsoft.VisualStudio.Modeling.Sdk.11.0.dll)

Syntaxe

'Deklarace
Public Class Store _
    Implements IServiceProvider, IDisposable
public class Store : IServiceProvider, IDisposable

Typ Store zveřejňuje následující členy.

Konstruktory

  Název Popis
Veřejná metoda Store(array<Type[]) Vytvoří novou instanci třídy Store.
Veřejná metoda Store(IServiceProvider, array<Type[]) Vytvoří novou instanci třídy Store.
Veřejná metoda Store(IServiceProvider, Dictionary<Object, Object>, array<Type[]) Vytvoří instanci třídy úložiště, které deleguje objekt IServiceProvider provádění dané serviceProvider.

Nahoru

Vlastnosti

  Název Popis
Veřejná vlastnost ChangeSource Získá aktuální změnit zdroj pro operace v úložišti.
Veřejná vlastnost CurrentContext Načte aktuální kontext do úložiště.
Veřejná vlastnost DefaultPartition Získá nebo nastaví výchozí oddíl pro úložiště.
Veřejná vlastnost DemandLoading Získá, zda je úložiště aktuálně poptávky načítání vztah.
Veřejná vlastnost Disposed Získá, zda byl uvolněn v úložišti.
Veřejná vlastnost DomainDataDirectory Získá informace adresáře domény úložiště.
Veřejná vlastnost DomainModels V tomto úložišti získá kolekce modelů domén.
Veřejná vlastnost ElementDirectory Získá prvků obsažených v úložišti adresáře.
Veřejná vlastnost ElementFactory Získá factory prvku modelu.
Veřejná vlastnost EventManagerDirectory Získá správce adresáře událostí pro model.
Veřejná vlastnost Id Načte ID úložiště.
Veřejná vlastnost InRedo Získá úložiště a ověří, zda jsou do aktuální kontext úložiště je provést znovu.
Veřejná vlastnost InSerializationTransaction Označuje, že je úložiště aktuálně aktivních serializace transakce v zásobníku transakce
Veřejná vlastnost InUndo Získá úložiště a ověří, zda je vrací zpět aktuální kontext do úložiště.
Veřejná vlastnost InUndoRedoOrRollback Získá úložiště a ověřuje znovu zda aktuální kontext úložiště je právě provedené, nebo vrátit zpět.
Veřejná vlastnost Partitions Získá objekty kolekce oddíl pro úložiště.
Veřejná vlastnost PartitionsAlternate Získá oddíly používané v úložišti.
Veřejná vlastnost PropertyBag Získá balíku vlastností úložiště.
Veřejná vlastnost RuleManager Získá správce pravidlo pro úložiště.
Veřejná vlastnost SerializerDirectory Výchozí adresář serializace pro toto úložiště
Veřejná vlastnost ShuttingDown Získá úložiště a ověří, zda úložiště je ukončována nebo nastaví stav úložiště jako vypnutí.
Veřejná vlastnost TransactionActive Získá nebo nastaví, zda je úložiště aktuálně aktivních transakcí.
Veřejná vlastnost TransactionLogs Načte aktuální seznam protokolů transakcí úložiště.
Veřejná vlastnost TransactionManager Získá správce transakcí pro model.
Veřejná vlastnost UndoManager Získává UndoManager pro výchozí kontext.
Veřejná vlastnost Version Načte verzi v úložišti.

Nahoru

Metody

  Název Popis
Veřejná metoda AddMonikerResolver Zaregistrovat IMonikerResolver pro model zadané domény.
Veřejná metoda DefaultPartitionForClass Oddíl, do kterého má být vytvořena nové prvky určené třídy ve výchozím nastavení vrátíte.
Veřejná metoda Dispose Odstraňuje úložiště.
Veřejná metoda Equals Určuje, zda zadaný objekt je rovno aktuální objekt. (Zděděno z Object.)
Chráněná metoda Finalize Umožňuje objekt při uvolnění prostředků a provádět jiné operace vyčištění, dříve, než je zažádáno systémem uvolňování paměti. (Zděděno z Object.)
Veřejná metoda FindDomainModel Najde modelu domény podle ID.
Veřejná metoda FindMonikerResolver Najde IMonikerResolver pro model zadaná doména zaregistrována.
Veřejná metoda GetClosurePrototypeGroup(ICollection<ModelElement>, ClosureType) Vytvoří skupiny prototypu prvek v oddílu výchozí uzavření daného typu, pokud je zadán seznam kořenových prvků.
Veřejná metoda GetClosurePrototypeGroup(ICollection<ModelElement>, ClosureType, Boolean) Vytvoří výchozí oddíl typu určeného uzavření při seznam kořenových prvků prvku skupiny prototypu a umožňuje vynechání poptávky načítání.
Veřejná metoda GetDomainModel(Guid) Načte instance modelu domény podle ID.
Veřejná metoda GetDomainModel<T>() Načte instance typu modelu zadané domény.
Veřejná metoda GetHashCode Slouží jako funkci hash u určitého typu. (Zděděno z Object.)
Veřejná metoda GetService Služba získá.
Veřejná metoda GetType Získá Type aktuální instance. (Zděděno z Object.)
Veřejná metoda LoadDomainModels Vytvoří všechna data domény určený seznam modelů domén.
Chráněná metoda MemberwiseClone Vytvoří kopii aktuálního Object. (Zděděno z Object.)
Veřejná metoda PopContext Odebere aktuální kontext mimo horní zásobník.
Veřejná metoda PushContext Nový kontext tlačí na horní zásobník kontextu úložiště.
Veřejná metoda RegisterTransactionLog Umožňuje klientovi registrovat protokol transakcí, který bude oznámeno událostí v tomto úložišti.
Veřejná metoda ToString Vrátí řetězec, který představuje aktuální objekt. (Zděděno z Object.)
Veřejná metoda UnregisterTransactionLog Umožňuje klientovi zrušit registraci protokolu transakcí z upozornění na události v tomto úložišti.

Nahoru

Události

  Název Popis
Veřejná událost StoreDisposing Dochází při úložiště je vyřazení.

Nahoru

Rozšiřující metody

  Název Popis
Veřejná rozšiřující metoda GetLocks Získání zámku příznaky této instance úložiště (Definoval ImmutabilityExtensionMethods.)
Veřejná rozšiřující metoda IsLocked Zda má toto úložiště všechny zadané množině zámky (Definoval ImmutabilityExtensionMethods.)
Veřejná rozšiřující metoda SetLocks Nastavení příznaků zámek této instance úložiště (Definoval ImmutabilityExtensionMethods.)

Nahoru

Poznámky

Úložiště obsahuje informace o jedné nebo více modelů.Úložiště může obsahovat kolekce modelů, přestože často je pouze jeden model v úložišti.

Úložiště obsahuje také metadat o modelu a informace o instancích prvků a vazeb mezi prvky modelu.Metadata obsahuje typy v modelu a jejich vztahy.

Úložiště má několik datových struktur, které jsou vyplněny při načtení modelu do úložiště.K tomu dochází v následujících případech:

  • Když domény specifické pro jazyk je spuštěno, buď jako experimentální sestavení

  • Pokud jste nasadili domény specifické pro jazyk a koncový uživatel spustí

  • Při načítání modelu programově do úložiště

DomainDataDirectory Obsahuje metadata o typy povolené v modelu.

ElementDirectory Obsahuje informace o jednotlivých instancí prvku a jejich propojení.(Instance ElementDirectory musí být podle typů DomainDataDirectory.)

Z úložiště můžete přejít na jednotlivé položky v úložišti.Můžete získat informace o prvky nebo typy.Můžete také provést následující úkoly:

  • Přidat položky

  • Odstranit položky

  • upravit existující prvky a jejich vlastnosti a odkazy

Při každé změně úložiště je nutné uzavřít jakýkoli kód, který zapisuje do úložiště v Transaction.Zrušit všechny změny provedené v transakci tím úložiště Rollback transakce, nebo to Commit transakce.

Úložiště byl RuleManager , která obsahuje funkci upsat pravidla.Úložiště můžete také přihlásit k odběru události.

Má také obchod UndoManager které má členy, které umožňují vrácení a opakované provedení změn v úložišti.Obecně není nutné vytvořit novou instanci úložiště, ale můžete a může číst modelu do něj rekonstrukci modelu do nové instance.Často získat přístup k úložišti z Store vlastnost prvek nebo odkaz v modelu.Argumenty událostí pravidel a události poskytují pravidlo nebo událost náležející k instanci prvek nebo odkaz a jeho vlastnost úložiště můžete použít pro přístup k úložišti a jeho TransactionManager.

Příklady

Následující příklady znázorňují různé způsoby vytvoření instance úložiště.Existují závislosti mezi modely domény, jako v třetím příkladu, který následuje, stanovit modelů domén v pořadí závislost.

// Create a store with your domain models (classes in the generated 
// code derived from Microsoft.VisualStudio.Modeling.DomainModel).
Store store = new Store(typeof(ActivityDomainModel));

// Domain models can be loaded into the store after construction.
// Be sure to call store.Dispose() when you are done with it. 
Store store2 = new Store();
Store2.LoadDomainModels(typeof(ActivityDomainModel));

// Multiple domain models can be loaded into the store at once
Store store3 = new Store(typeof(BaseActivityDomainModel), typeof(ExtendedActivityDomainModel));

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.

Viz také

Referenční dokumentace

Microsoft.VisualStudio.Modeling – obor názvů

Další zdroje

[přesměrovat] Model domény generované rozhraní API

How to: Create Elements in Code

How to: Create Elements in Code

How to: Create Links in Code

How to: Set or Get Domain Property Values

How to: Delete Elements and Links Programmatically

How to: Undo and Redo Changes Made to the Store