Export (0) Print
Expand All

ModelStore Class

Implements physical storage for a schema model instance.

System.Object
  Microsoft.Data.Schema.SchemaModel.ModelStore
    Microsoft.Data.Schema.SchemaModel.DataSchemaModel

Namespace:  Microsoft.Data.Schema.SchemaModel
Assembly:  Microsoft.Data.Schema (in Microsoft.Data.Schema.dll)

[SerializableAttribute]
public abstract class ModelStore : IModelAnnotationHolder, 
	IDisposable, ISerializable

The ModelStore type exposes the following members.

  NameDescription
Public propertyStatic memberBuiltInPropertyTypes
Public propertyCollation
Public propertyComparerGets the collation comparer object.
Public propertyIsDisposing
Public propertyIsOptimizedForInsert
Public propertyIsOptimizedForQuery
Public propertySchema
Public propertyWriteCountReturns the value of the current write count.
Top

  NameDescription
Public methodAddAnnotationAdds an annotation to the model.
Public methodStatic memberAttach
Protected methodCleanupExternalPropertyWhen implemented in a derived class, releases resources that are used by an external property when the element is deleted.
Public methodCreateAnnotation(Type)
Public methodCreateAnnotation(ModelAnnotationClass)Creates an annotation by using the given annotation metadata.
Public methodCreateAnnotation<TAnnotation>()
Public methodCreateElement(Type)
Public methodCreateElement(ModelElementClass)Creates an element by using the given element metadata object.
Public methodCreateElement<TElement>()
Public methodCreateElementHandle
Protected methodCreateExternalElement(Type)Creates an external element.
Protected methodCreateExternalElement(ModelElementClass)Creates an external element by using the provided element metadata object.
Protected methodCreateExternalElement<TElement>()Creates an external element of the specified type.
Protected methodCreateExternalNamedElement(Type, ModelIdentifier)Creates a named external element by using the provided type and identifier.
Protected methodCreateExternalNamedElement(ModelElementClass, ModelIdentifier)Creates a named external element by using the provided element metadata object and identifier.
Protected methodCreateExternalNamedElement<TElement>(ModelIdentifier)Creates a named external element of the specified type by using the provided element metadata object and identifier.
Public methodCreateIdentifier(ICollection<String>)Creates a unique model identifier by using the provided collection of part names.
Public methodCreateIdentifier(String[])Creates a unique model identifier by using the provided array of part names.
Public methodCreateIdentifier(Boolean, ICollection<String>)Creates a unique model identifier by using the provided collection of name parts.
Public methodCreateIdentifier(Boolean, String[])Creates a unique model identifier by using the provided case-sensitive indication and array of part names.
Public methodCreateIdentifier(IList<String>, ICollection<String>)Creates a unique model identifier by using the provided list of external part names, indication of case sensitivity, and collection of part names.
Public methodCreateIdentifier(IList<String>, Boolean, ICollection<String>)Creates a unique model identifier by using the provided list of external parts, indication of case sensitivity, and collection of part names.
Public methodCreateIdentifier(IList<String>, Boolean, String[])Creates a unique model identifier by using the provided list of external part names, indication of case sensitivity, and array of part names.
Public methodCreateIdentifierHandleCreates a handle for the provided identifier.
Public methodCreateNamedAnnotation(Type, ModelIdentifier)Creates a named ModelAnnotation object by using the provided model identifier.
Public methodCreateNamedAnnotation(ModelAnnotationClass, ModelIdentifier)Creates a named ModelAnnotation object by using the provided annotation metadata object and identifier.
Public methodCreateNamedAnnotation<TAnnotation>(ModelIdentifier)Creates a named ModelAnnotation object by using the provided model identifier.
Public methodCreateNamedElement(Type, ModelIdentifier)
Public methodCreateNamedElement(ModelElementClass, ModelIdentifier)
Public methodCreateNamedElement<TElement>(ModelIdentifier)
Public methodDecodeIdentifier(String)Returns an identifier that corresponds to the decoded value of the provided string.
Public methodStatic memberDecodeIdentifier(String, List<String>, List<String>)Returns an identifier that corresponds to the decoded value of the provided string.
Protected methodDeserializeExternalPropertyReturns the value of an external property by using the provided XML reader and property metadata object.
Public methodStatic memberDetach
Public methodDispose()Disposes the model.
Protected methodDispose(Boolean)Disposes the model.
Public methodStatic memberEncodeIdentifierReturns a string representation of the identifier that is encoded with appropriate quotation and separator characters to demarcate its parts.
Public methodEqualsDetermines whether the specified Object is equal to the current Object. (Inherited from Object.)
Protected methodFinalize (Overrides Object.Finalize().)
Protected methodFixupAfterDeserialization
Public methodFreeElementHandleFrees the provided element handle.
Public methodFreeIdentifierHandleFrees the provided element handle.
Public methodGetAllAnnotations()Returns a list of all annotations.
Public methodGetAllAnnotations(Type)
Public methodGetAllAnnotations(ModelIdentifier)Returns a list of all annotations that are named with the provided identifier.
Public methodGetAllAnnotations(ModelIdentifier, Type)
Public methodGetAllAnnotations<TType>()Returns a list of the annotations on the model that implements the given type.
Public methodGetAllAnnotations<TType>(ModelIdentifier)Returns all annotations that implement the given type.
Public methodGetAnnotations()Returns all the annotations on the model.
Public methodGetAnnotations(Type)Returns a list of the annotations on the model that implements the given type.
Public methodGetAnnotations(ModelIdentifier)Returns a list of the annotations on the model that matches the given identifiers.
Public methodGetAnnotations(ModelIdentifier, Type)Returns all annotations that have the given identifier name, and that implement the given type.
Public methodGetAnnotations<TType>()
Public methodGetAnnotations<TType>(ModelIdentifier)Returns all elements.
Public methodGetElementHandleTargetReturns a model element that is identified by the provided handle.
Public methodGetElements(ModelElementResolutionStatus)Returns a list of the elements in the store that has the given resolution status.
Public methodGetElements(ModelElementValidationStatus)Returns a list of the elements in the store that has the given validation status.
Public methodGetElements(Type, ModelElementQueryFilter)
Public methodGetElements(ModelElementClass, ModelElementQueryFilter)Returns elements that share the given metadata object as selected by the given filter.
Public methodGetElements(ModelElementResolutionStatus, Int32)Returns a list of the elements that aredetermined by the count that has the given resolution status.
Public methodGetElements(ModelElementValidationStatus, Int32)Returns a list of the elements that are determined by the count that has the given validation status.
Public methodGetElements(ModelIdentifier, ModelElementClass, ModelElementQueryFilter)
Public methodGetElements(ModelIdentifier, ModelIdentifierGroup, ModelElementQueryFilter)
Public methodGetElements(ModelIdentifier, Type, ModelElementQueryFilter)
Public methodGetElements<TElement>(ModelElementQueryFilter)
Public methodGetElements<TElement>(ModelIdentifier, ModelElementQueryFilter)
Public methodGetElementsCount(ModelElementResolutionStatus)Returns the number of elements in the store that match the given status.
Public methodGetElementsCount(ModelElementValidationStatus)Returns the number of elements in the store that match the given status.
Public methodGetElementsFrom(String, ModelElementClass, ModelElementQueryFilter)
Public methodGetElementsFrom(String, Type, ModelElementQueryFilter)
Public methodGetElementsFrom<TElement>(String, ModelElementQueryFilter)
Protected methodGetExternalProperty<TProperty>
Public methodGetHashCodeServes as a hash function for a particular type. (Inherited from Object.)
Public methodGetIdentifier(ICollection<String>)
Public methodGetIdentifier(String[])Gets the identifier from the model by scope ID and a string.
Public methodGetIdentifier(IList<String>, ICollection<String>)
Public methodGetIdentifierHandleTarget
Public methodGetObjectData
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Public methodStatic memberIsBuiltInPropertyType
Protected methodMemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Protected methodOnModelElementChanged
Public methodOptimizeForInitialPopulation
Public methodOptimizeForQuery
Public methodRemoveAnnotationRemoves an annotation from the model.
Protected methodSerializeExternalProperty
Protected methodSetExternalProperty<TProperty>
Public methodTestWriteCountTests the write count with the given value.
Public methodToStringReturns a string that represents the current object. (Inherited from Object.)
Protected methodUpdateSourceNamePrefixes
Protected methodValidateWriteAccess
Top

The physical store–related constructs for a model are in this class. ModelStore has minimal services and no direct affinity for modeling databases. Instead, ModelStore is a basic modeling API that implements Elements, Annotations and Relationships, and Properties.

DataSchemaModel is an abstract base class that inherits ModelStore and represents a database-specific model API, which includes access to services for model building from Script Document Object Model (DOM), and vice versa. Database platform-specific model implementations, such as Sql90SchemaModel, are derived from DataSchemaModel.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Community Additions

ADD
Show:
© 2014 Microsoft