Share via


DataSchemaModel Class

The DataSchemaModel is a specialization of the ModelStore. All database schema providers must implement a class that inherits this base class.

Inheritance Hierarchy

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

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

Syntax

'Declaration
<SerializableAttribute> _
Public MustInherit Class DataSchemaModel _
    Inherits ModelStore
[SerializableAttribute]
public abstract class DataSchemaModel : ModelStore
[SerializableAttribute]
public ref class DataSchemaModel abstract : public ModelStore
[<AbstractClass>]
[<SerializableAttribute>]
type DataSchemaModel =  
    class
        inherit ModelStore
    end
public abstract class DataSchemaModel extends ModelStore

The DataSchemaModel type exposes the following members.

Constructors

  Name Description
Protected method DataSchemaModel(SerializationInfo, StreamingContext) Initializes a new instance of the DataSchemaModel class.
Protected method DataSchemaModel(ModelCollation, ModelSchema, String, ScriptCache, ErrorManager) Initializes a new instance of the DataSchemaModel class.

Top

Properties

  Name Description
Public property AnnotationsIncludedInSerialization Gets a list of the types of annotations that will be included when the model is serialized.
Public property Collation (Inherited from ModelStore.)
Public property Comparer Gets the collation comparer object. (Inherited from ModelStore.)
Protected property Controller Gets the model controller.
Public property DatabaseSchemaProvider Gets the database schema provider.
Public property ElementProcessingOperationsCount Gets the number of element-processing operations that remain before the model is ready.
Public property ErrorManager Gets the error manager to report errors.
Public property IsDisposing (Inherited from ModelStore.)
Public property IsOptimizedForInsert (Inherited from ModelStore.)
Public property IsOptimizedForQuery (Inherited from ModelStore.)
Public property Schema (Inherited from ModelStore.)
Public property ScriptCache Gets the script cache to cache scripts.
Public property WriteCount Returns the value of the current write count. (Inherited from ModelStore.)

Top

Methods

  Name Description
Public method AddAnnotation Adds an annotation to the model. (Inherited from ModelStore.)
Public method AddCustomData Adds custom data to the model.
Public method BeginBatchUpdate Begins batch update.
Protected method CleanupExternalProperty When implemented in a derived class, releases resources that are used by an external property when the element is deleted. (Inherited from ModelStore.)
Public method CreateAnnotation(Type) (Inherited from ModelStore.)
Public method CreateAnnotation(ModelAnnotationClass) Creates an annotation by using the given annotation metadata. (Inherited from ModelStore.)
Public method CreateAnnotation<TAnnotation>() (Inherited from ModelStore.)
Public method CreateElement(Type) (Inherited from ModelStore.)
Public method CreateElement(ModelElementClass) Creates an element by using the given element metadata object. (Inherited from ModelStore.)
Public method CreateElement<TElement>() (Inherited from ModelStore.)
Public method CreateElementHandle (Inherited from ModelStore.)
Protected method CreateExternalElement(Type) Creates an external element. (Inherited from ModelStore.)
Protected method CreateExternalElement(ModelElementClass) Creates an external element by using the provided element metadata object. (Inherited from ModelStore.)
Protected method CreateExternalElement<TElement>() Creates an external element of the specified type. (Inherited from ModelStore.)
Protected method CreateExternalNamedElement(Type, ModelIdentifier) Creates a named external element by using the provided type and identifier. (Inherited from ModelStore.)
Protected method CreateExternalNamedElement(ModelElementClass, ModelIdentifier) Creates a named external element by using the provided element metadata object and identifier. (Inherited from ModelStore.)
Protected method CreateExternalNamedElement<TElement>(ModelIdentifier) Creates a named external element of the specified type by using the provided element metadata object and identifier. (Inherited from ModelStore.)
Public method CreateIdentifier(ICollection<String>) Creates a unique model identifier by using the provided collection of part names. (Inherited from ModelStore.)
Public method CreateIdentifier(array<String[]) Creates a unique model identifier by using the provided array of part names. (Inherited from ModelStore.)
Public method CreateIdentifier(Boolean, ICollection<String>) Creates a unique model identifier by using the provided collection of name parts. (Inherited from ModelStore.)
Public method CreateIdentifier(Boolean, array<String[]) Creates a unique model identifier by using the provided case-sensitive indication and array of part names. (Inherited from ModelStore.)
Public method CreateIdentifier(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. (Inherited from ModelStore.)
Public method CreateIdentifier(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. (Inherited from ModelStore.)
Public method CreateIdentifier(IList<String>, Boolean, array<String[]) Creates a unique model identifier by using the provided list of external part names, indication of case sensitivity, and array of part names. (Inherited from ModelStore.)
Public method CreateIdentifierHandle Creates a handle for the provided identifier. (Inherited from ModelStore.)
Public method CreateNamedAnnotation(Type, ModelIdentifier) Creates a named ModelAnnotation object by using the provided model identifier. (Inherited from ModelStore.)
Public method CreateNamedAnnotation(ModelAnnotationClass, ModelIdentifier) Creates a named ModelAnnotation object by using the provided annotation metadata object and identifier. (Inherited from ModelStore.)
Public method CreateNamedAnnotation<TAnnotation>(ModelIdentifier) Creates a named ModelAnnotation object by using the provided model identifier. (Inherited from ModelStore.)
Public method CreateNamedElement(Type, ModelIdentifier) (Inherited from ModelStore.)
Public method CreateNamedElement(ModelElementClass, ModelIdentifier) (Inherited from ModelStore.)
Public method CreateNamedElement<TElement>(ModelIdentifier) (Inherited from ModelStore.)
Public method DecodeIdentifier(String) Returns an identifier that corresponds to the decoded value of the provided string. (Inherited from ModelStore.)
Public methodStatic member Deserialize(String, ErrorManager)
Public methodStatic member Deserialize(TextReader, ErrorManager, String)
Public methodStatic member Deserialize(String, ErrorManager, Action<DataSchemaModelHeader, DatabaseSchemaProvider, DataSchemaModelConstructor>)
Public methodStatic member Deserialize(TextReader, ErrorManager, String, Action<DataSchemaModelHeader, DatabaseSchemaProvider, DataSchemaModelConstructor>)
Protected method DeserializeExternalProperty Returns the value of an external property by using the provided XML reader and property metadata object. (Inherited from ModelStore.)
Public method Dispose() Disposes the model. (Inherited from ModelStore.)
Protected method Dispose(Boolean) (Overrides ModelStore.Dispose(Boolean).)
Public method EndBatchUpdate Ends the batch update.
Public method Equals Determines whether the specified Object is equal to the current Object. (Inherited from Object.)
Protected method Finalize (Inherited from ModelStore.)
Protected method FixupAfterDeserialization (Inherited from ModelStore.)
Protected method FixupAfterXmlDeserialization
Public method FreeElementHandle Frees the provided element handle. (Inherited from ModelStore.)
Public method FreeIdentifierHandle Frees the provided element handle. (Inherited from ModelStore.)
Public method GetAllAnnotations() Returns a list of all annotations. (Inherited from ModelStore.)
Public method GetAllAnnotations(Type) (Inherited from ModelStore.)
Public method GetAllAnnotations(ModelIdentifier) Returns a list of all annotations that are named with the provided identifier. (Inherited from ModelStore.)
Public method GetAllAnnotations(ModelIdentifier, Type) (Inherited from ModelStore.)
Public method GetAnnotations() Returns all the annotations on the model. (Inherited from ModelStore.)
Public method GetAnnotations(Type) Returns a list of the annotations on the model that implements the given type. (Inherited from ModelStore.)
Public method GetAnnotations(ModelIdentifier) Returns a list of the annotations on the model that matches the given identifiers. (Inherited from ModelStore.)
Public method GetAnnotations(ModelIdentifier, Type) Returns all annotations that have the given identifier name, and that implement the given type. (Inherited from ModelStore.)
Public method GetCustomData() Gets a list of custom data.
Public method GetCustomData(String) Gets a list of custom data by using the provided category.
Public method GetCustomData(String, String) Gets a list of custom data by using the provided category and type name.
Public method GetElementHandleTarget Returns a model element that is identified by the provided handle. (Inherited from ModelStore.)
Public method GetElements(ModelElementResolutionStatus) Returns a list of the elements in the store that has the given resolution status. (Inherited from ModelStore.)
Public method GetElements(ModelElementValidationStatus) Returns a list of the elements in the store that has the given validation status. (Inherited from ModelStore.)
Public method GetElements(Type, ModelElementQueryFilter) (Inherited from ModelStore.)
Public method GetElements(ModelElementClass, ModelElementQueryFilter) Returns elements that share the given metadata object as selected by the given filter. (Inherited from ModelStore.)
Public method GetElements(ModelElementResolutionStatus, Int32) Returns a list of the elements that aredetermined by the count that has the given resolution status. (Inherited from ModelStore.)
Public method GetElements(ModelElementValidationStatus, Int32) Returns a list of the elements that are determined by the count that has the given validation status. (Inherited from ModelStore.)
Public method GetElements(ModelIdentifier, ModelElementClass, ModelElementQueryFilter) (Inherited from ModelStore.)
Public method GetElements(ModelIdentifier, ModelIdentifierGroup, ModelElementQueryFilter) (Inherited from ModelStore.)
Public method GetElements(ModelIdentifier, Type, ModelElementQueryFilter) (Inherited from ModelStore.)
Public method GetElements<TElement>(ModelElementQueryFilter) (Inherited from ModelStore.)
Public method GetElements<TElement>(ModelIdentifier, ModelElementQueryFilter) (Inherited from ModelStore.)
Public method GetElementsCount(ModelElementResolutionStatus) Returns the number of elements in the store that match the given status. (Inherited from ModelStore.)
Public method GetElementsCount(ModelElementValidationStatus) Returns the number of elements in the store that match the given status. (Inherited from ModelStore.)
Public method GetElementsFrom(String, ModelElementClass, ModelElementQueryFilter) (Inherited from ModelStore.)
Public method GetElementsFrom(String, Type, ModelElementQueryFilter) (Inherited from ModelStore.)
Public method GetElementsFrom<TElement>(String, ModelElementQueryFilter) (Inherited from ModelStore.)
Public method GetElementsFromExternalSource Gets the elements from an external source.
Protected method GetElementSources Gets the element sources for a particular element.
Protected method GetExternalProperty<TProperty> (Inherited from ModelStore.)
Public methodStatic member GetExternalSourceFileName Gets the external source file name for the specified model element.
Public methodStatic member GetExternalSourceLogicalName Gets the logical name for the external source of the specified model element.
Public method GetHashCode Serves as a hash function for a particular type. (Inherited from Object.)
Public method GetIdentifier(ICollection<String>) (Inherited from ModelStore.)
Public method GetIdentifier(array<String[]) Gets the identifier from the model by scope ID and a string. (Inherited from ModelStore.)
Public method GetIdentifier(IList<String>, ICollection<String>) (Inherited from ModelStore.)
Public method GetIdentifierHandleTarget (Inherited from ModelStore.)
Public method GetObjectData Returns a SerializationInfo object that contains all the data that are needed to serialize the DataSchemaModel object. (Overrides ModelStore.GetObjectData(SerializationInfo, StreamingContext).)
Protected method GetRelationshipEntrySources Gets a list of relationship entry sources.
Public method GetType Gets the Type of the current instance. (Inherited from Object.)
Protected method InitializeReferenceConstructor Initializes a reference constructor by using the provided header data and model constructor.
Public methodStatic member IsElementFromCompositeReference Indicates whether the element is from another schema model that was added to the current model.
Public methodStatic member IsElementFromExternalReference(IModelElement) Indicates whether the specified element is from an external reference.
Public methodStatic member IsElementFromExternalReference(IModelElement, String) Indicates whether the specified element is from an external reference.
Public method LoadExternals Loads model elements from an external sources, such as a persisted model.
Protected method MemberwiseClone Creates a shallow copy of the current Object. (Inherited from Object.)
Protected method OnCustomDataAdded Called when custom data is added.
Protected method OnCustomDataRemoved Called when custom data is removed.
Protected method OnModelElementChanged Called when a model element changes. (Overrides ModelStore.OnModelElementChanged(IModelElement, ModelEventType).)
Public method OptimizeForInitialPopulation (Inherited from ModelStore.)
Public method OptimizeForQuery (Inherited from ModelStore.)
Public methodStatic member ReadDataSchemaModelHeader(TextReader) Override this method in a database schema provider implementation to read the data schema model header.
Public methodStatic member ReadDataSchemaModelHeader(String)
Public methodStatic member ReadDataSchemaModelHeader(TextReader, Boolean) Override this method in a database schema provider implementation to read the data schema model header.
Public methodStatic member ReadDataSchemaModelHeader(String, Boolean) Override this method in a database schema provider implementation to read the data schema model header.
Public method RegisterForController Registers for a model controller.
Public method RemoveAnnotation Removes an annotation from the model. (Inherited from ModelStore.)
Public method RemoveCustomData Removes custom data.
Public method Resolve() Resolves all elements in the model.
Public method Resolve(Int32) Resolves the specified number of elements.
Public method Serialize(TextWriter)
Public method Serialize(TextWriter, IEnumerable<Type>)
Public method Serialize(TextWriter, IEnumerable<Type>, Boolean) Writes the data schema model to the specified output.
Protected method SerializeExternalProperty (Inherited from ModelStore.)
Protected method SetExternalProperty<TProperty> (Inherited from ModelStore.)
Public method TestWriteCount Tests the write count with the given value. (Inherited from ModelStore.)
Public method ToString Returns a string that represents the current object. (Inherited from Object.)
Public method UnloadExternals Unloads external elements from the specified file.
Protected method UpdateSourceNamePrefixes (Inherited from ModelStore.)
Protected method ValidateWriteAccess Validates write access. (Overrides ModelStore.ValidateWriteAccess().)
Protected method ValidReferenceTranslator Returns a value that indicates whether a reference translator can be used translate from another database schema provider to the current one.

Top

Events

  Name Description
Public event ModelChanged (Inherited from ModelStore.)
Public event ModelOptimizationChanged (Inherited from ModelStore.)

Top

Fields

  Name Description
Public fieldStatic member CustomSchemaDataFileName Value is "FileName".
Public fieldStatic member CustomSchemaDataLogicalName Value is "LogicalName".
Public fieldStatic member DatabaseSchemaReferenceExternalParts Value is "ExternalParts".
Public fieldStatic member DatabaseSchemaType Value is "DbSchema".
Public fieldStatic member ReferenceCategory Value is "Reference".
Public fieldStatic member SuppressMissingDependenciesErrors Value is "SuppressMissingDependenciesErrors".

Top

Thread Safety

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

See Also

Reference

Microsoft.Data.Schema.SchemaModel Namespace

ModelStore