DomainClassInfo Class

Represents a domain class.

Inheritance Hierarchy

System.Object
  Microsoft.VisualStudio.Modeling.DomainObjectInfo
    Microsoft.VisualStudio.Modeling.DomainClassInfo
      Microsoft.VisualStudio.Modeling.DomainRelationshipInfo

Namespace:  Microsoft.VisualStudio.Modeling
Assembly:  Microsoft.VisualStudio.Modeling.Sdk.12.0 (in Microsoft.VisualStudio.Modeling.Sdk.12.0.dll)

Syntax

'Declaration
Public Class DomainClassInfo _
    Inherits DomainObjectInfo
public class DomainClassInfo : DomainObjectInfo
public ref class DomainClassInfo : public DomainObjectInfo
type DomainClassInfo =  
    class 
        inherit DomainObjectInfo 
    end
public class DomainClassInfo extends DomainObjectInfo

The DomainClassInfo type exposes the following members.

Properties

  Name Description
Public property AllDescendants Gets a list of all domain classes derived from this class.
Public property AllDomainProperties Gets a list of domain properties declared on this domain class.
Public property AllDomainRolesPlayed Gets a read-only list of all the domain roles played by this class or its ascendants.
Public property AllEmbeddedByDomainRoles Gets a list of domain roles which embed this domain class.
Public property BaseDomainClass Gets the domain class that this domain class inherits from.
Public property DefaultDomainProperty Gets the default domain property for this domain class.
Public property DisplayName Gets the display name of the element. (Inherited from DomainObjectInfo.)
Public property DomainModel Gets the domain model that this domain class belongs to. (Overrides DomainObjectInfo.DomainModel.)
Public property Id Gets the ID of the element. (Inherited from DomainObjectInfo.)
Public property ImplementationClass Gets the implementation type of this domain class.
Public property IsValidationEnabled Gets whether validation is enabled for this domain class.
Public property LocalDescendants Gets a list of domain classes derived directly from this class.
Public property LocalDomainProperties Gets a list of the domain properties declared in this domain class.
Public property LocalDomainRolesPlayed Gets a list of the domain roles played by this domain class.
Public property Name Gets the name of the element. (Inherited from DomainObjectInfo.)
Public property NameDomainProperty Gets the element name property for this domain class.

Top

Methods

  Name Description
Public method Equals Equality is based on the ID of the DomainClassInfo object. (Overrides Object.Equals(Object).)
Protected method Finalize Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method FindDomainProperty Finds a domain property that is defined in this domain class.
Public methodStatic member FindEmbeddingElement Finds the embedding container for this element.
Public methodStatic member FindEmbeddingElementLink Finds embedding link for this element.
Public method GetHashCode Hashcode is based on the ID of this object (Overrides Object.GetHashCode().)
Public methodStatic member GetName Gets the name of the element.
Public method GetType Gets the Type of the current instance. (Inherited from Object.)
Public methodStatic member HasNameProperty Indicates whether an element has a name.
Public method IsDerivedFrom(Guid) Indicates whether this domain class is derived from a specified domain class.
Public method IsDerivedFrom(DomainClassInfo) Indicates whether this domain class is derived from a specified domain class.
Protected method MemberwiseClone Creates a shallow copy of the current Object. (Inherited from Object.)
Public methodStatic member SetName Sets the name of the element.
Public methodStatic member SetUniqueName(ModelElement) Assigns an element a unique name.
Public methodStatic member SetUniqueName(ModelElement, String) Assigns an element a unique name.
Public method ToString Converts the element to a string. (Inherited from DomainObjectInfo.)
Public methodStatic member TryGetName Verifies whether the element has a name and returns the name if it exists.

Top

Operators

  Name Description
Public operatorStatic member Equality
Public operatorStatic member Inequality

Top

Remarks

There is a DomainClassInfo object for each domain class in a domain model.

For example, if the definition of a domain model has a class A that derives from domain class B and has a relationship to domain class C, then there will be three DomainClassInfo objects, one DomainClassInfo object for each domain class.

Examples

You access DomainClassInfo objects using the DomainDataDirectory of a store.

Store mystore = new Store(somefile);
ICollection<DomainClassInfo> dclasses =  Mystore.DomainDataDirectory.DomainClasses.get_DomainClasses();
// foreach …

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.VisualStudio.Modeling Namespace