Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
El almacén contiene una representación en memoria de los elementos y los vínculos en uno o más modelos.
Jerarquía de herencia
System.Object
Microsoft.VisualStudio.Modeling.Store
Espacio de nombres: Microsoft.VisualStudio.Modeling
Ensamblado: Microsoft.VisualStudio.Modeling.Sdk.11.0 (en Microsoft.VisualStudio.Modeling.Sdk.11.0.dll)
Sintaxis
'Declaración
Public Class Store _
Implements IServiceProvider, IDisposable
public class Store : IServiceProvider, IDisposable
El tipo Store expone los siguientes miembros.
Constructores
| Nombre | Descripción | |
|---|---|---|
![]() |
Store(array<Type[]) | Inicializa una nueva instancia de la clase Store. |
![]() |
Store(IServiceProvider, array<Type[]) | Inicializa una nueva instancia de la clase Store. |
![]() |
Store(IServiceProvider, Dictionary<Object, Object>, array<Type[]) | Crea una instancia de la clase de almacén que delega la implementación de IServiceProvider al proveedor de servicios especificado. |
Arriba
Propiedades
| Nombre | Descripción | |
|---|---|---|
![]() |
ChangeSource | Obtiene el origen actual de cambio para las operaciones en el almacén. |
![]() |
CurrentContext | Obtiene el contexto actual del almacén. |
![]() |
DefaultPartition | obtiene o establece la partición predeterminada para el almacén. |
![]() |
DemandLoading | Obtiene si el almacén está actualmente petición que carga una relación. |
![]() |
Disposed | obtiene si se ha desechado el almacén. |
![]() |
DomainDataDirectory | Obtiene el directorio de información del dominio del almacén. |
![]() |
DomainModels | obtiene una colección de modelos de dominio en este almacén. |
![]() |
ElementDirectory | Obtiene el directorio de los elementos contenidos dentro del almacén. |
![]() |
ElementFactory | Obtiene el generador del elemento del modelo. |
![]() |
EventManagerDirectory | Obtiene el directorio del administrador del modelo. |
![]() |
Id | Obtiene el identificador de almacén. |
![]() |
InRedo | Obtiene el almacén y comprueba si el contexto actual del almacén se rehaciendo. |
![]() |
InSerializationTransaction | Indica que el almacén tiene a actualmente la transacción activa de serialización en la pila de la transacción |
![]() |
InUndo | Obtiene el almacén y comprueba si el contexto actual del almacén se está deshaciendo. |
![]() |
InUndoRedoOrRollback | Obtiene el almacén y comprueba si el contexto actual del almacén se rehaciendo, deshacer, o revertirse a. |
![]() |
Partitions | Obtiene la colección de objetos del elemento del almacén. |
![]() |
PartitionsAlternate | obtiene las particiones utilizadas en el almacén. |
![]() |
PropertyBag | Obtiene el contenedor de propiedades del almacén. |
![]() |
RuleManager | Obtiene el administrador de la regla del almacén. |
![]() |
SerializerDirectory | El directorio predeterminado de serialización para este almacén |
![]() |
ShuttingDown | Obtiene el almacén y comprueba si el almacén está cerrándose, o establece el estado del almacén como cerrando. |
![]() |
TransactionActive | Obtiene o establece si el almacén tiene a actualmente la transacción activa. |
![]() |
TransactionLogs | Obtiene la lista actual de los registros de transacciones del almacén. |
![]() |
TransactionManager | Obtiene el administrador de transacciones para el modelo. |
![]() |
UndoManager | obtiene UndoManager para el contexto predeterminado. |
![]() |
Version | Obtiene la versión del almacén. |
Arriba
Métodos
| Nombre | Descripción | |
|---|---|---|
![]() |
AddMonikerResolver | registre IMonikerResolver para el modelo de dominio especificado. |
![]() |
DefaultPartitionForClass | Devuelve la parte en la que los nuevos elementos de la clase especificada se deben crear de forma predeterminada. |
![]() |
Dispose | Elimine el almacén. |
![]() |
Equals | Determina si el objeto especificado es igual al objeto actual. (Se hereda de Object). |
![]() |
Finalize | Permite que un objeto intente liberar recursos y realizar otras operaciones de limpieza antes de ser reclamado por la recolección de elementos no utilizados. (Se hereda de Object). |
![]() |
FindDomainModel | Encuentra un modelo de dominio por su identificador |
![]() |
FindMonikerResolver | encuentra IMonikerResolver registrado para el modelo de dominio especificado. |
![]() |
GetClosurePrototypeGroup(ICollection<ModelElement>, ClosureType) | Crea un prototipo del grupo de elementos en la partición predeterminada de cierre determinado tipo si una lista de elementos raíz se especifica. |
![]() |
GetClosurePrototypeGroup(ICollection<ModelElement>, ClosureType, Boolean) | Crea un prototipo del grupo de elementos en la partición predeterminada de cierre especificado tipo cuando se especifica una lista de elementos raíz y permite omitir de carga de la demanda. |
![]() |
GetDomainModel(Guid) | Obtiene una instancia de un modelo de dominio por su identificador |
![]() |
GetDomainModel<T>() | Obtiene una instancia de un tipo especificado del modelo de dominio. |
![]() |
GetHashCode | Actúa como función hash para un tipo concreto. (Se hereda de Object). |
![]() |
GetService | obtiene un servicio. |
![]() |
GetType | Obtiene el objeto Type de la instancia actual. (Se hereda de Object). |
![]() |
LoadDomainModels | Crea todos los datos de dominio para la lista especificada de modelos de dominio. |
![]() |
MemberwiseClone | Crea una copia superficial del objeto Object actual. (Se hereda de Object). |
![]() |
PopContext | Quita el contexto de la parte superior de la pila. |
![]() |
PushContext | Inserta un nuevo contexto en la parte superior de la pila de contexto store. |
![]() |
RegisterTransactionLog | Permite que un cliente registre un registro de transacciones que se notifique de eventos en este almacén. |
![]() |
ToString | Devuelve una cadena que representa el objeto actual. (Se hereda de Object). |
![]() |
UnregisterTransactionLog | Ofrece al cliente el registro un registro de transacciones de la notificación de eventos en este almacén. |
Arriba
Eventos
| Nombre | Descripción | |
|---|---|---|
![]() |
StoreDisposing | Se produce cuando el almacén está desechando. |
Arriba
Métodos de extensión
| Nombre | Descripción | |
|---|---|---|
![]() |
GetLocks | Obtiene los indicadores de bloqueo para esta instancia del almacén (Definido por ImmutabilityExtensionMethods). |
![]() |
IsLocked | Pruebe de si este almacén tiene cualquiera de un conjunto especificado bloqueos (Definido por ImmutabilityExtensionMethods). |
![]() |
SetLocks | Establezca los indicadores de bloqueo de esta instancia del almacén (Definido por ImmutabilityExtensionMethods). |
Arriba
Comentarios
El almacén contiene información sobre uno o varios modelos.Un almacén puede contener una colección de modelos, aunque con frecuencia solamente haya un modelo en el almacén.
El almacén también contiene metadatos sobre un modelo e información sobre las instancias de los elementos y los vínculos entre los elementos que componen ese modelo.los metadatos contienen los tipos permitidos en el modelo y sus relaciones.
El almacén tiene varias estructuras de datos se rellenen a un modelo se carga en el almacén.Esto se produce en las circunstancias siguientes:
cuando se inicia el lenguaje específico, ya sea como compilación experimental
cuando se ha implementado el lenguaje específico y un usuario final lo inicia
cuando se carga un modelo mediante programación en el almacén
DomainDataDirectory contiene metadatos sobre los tipos permitidos estar en el modelo.
ElementDirectory contiene información sobre cada instancia del elemento y sus vínculos.(Las instancias de ElementDirectory deben ser de los tipos definidos en DomainDataDirectory.)
Store, puede navegar a elementos individuales en el almacén.Puede recopilar información sobre elementos o tipos.También puede hacer las tareas siguientes:
agregar elementos
eliminar elementos
modifique los elementos y los vínculos existentes y sus propiedades
Siempre que se modifique un almacén, debe agregar código que escribe en el almacén de Transaction.Puede cancelar todos los cambios al almacén hecho en una transacción haciendo Rollback de transacción o no haciendo Commit de la transacción.
El almacén tiene RuleManager que contiene funcionalidad para suscribirse a las reglas.El almacén también puede suscribirse a eventos.
El almacén también tiene UndoManager que tiene miembros que permiten deshacer y la fase de rehacer cambia el almacén.Generalmente no tendrá que crear una nueva instancia de un almacén, aunque puede y pueda leer un modelo en él deserializando un modelo en la nueva instancia.A menudo, se obtiene acceso al almacén de propiedades de Store de un elemento o un vínculo en el modelo.Los argumentos de reglas y eventos proporcionan la instancia del elemento o el vínculo a la que la regla o el evento correspondiente, y puede utilizar la propiedad del almacén para tener acceso al almacén y su TransactionManager.
Ejemplos
Los ejemplos siguientes muestran maneras diferentes de crear instancias de un almacén.cuando hay dependencias entre los modelos de dominio, como en el tercer ejemplo que sigue, los modelos de dominio se deben especificar en orden de dependencia.
// 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));
Seguridad para subprocesos
Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.
Vea también
Referencia
Microsoft.VisualStudio.Modeling (Espacio de nombres)
Otros recursos
[redirigir] Modelo de dominio en la API generada
How to: Create Elements in Code
How to: Create Elements in Code
How to: Set or Get Domain Property Values
.gif)
.gif)
.gif)
.gif)
.gif)