共用方式為


Dsl Class

DomainClass Dsl Definition of a Domain Specific Language, which is also a DslLibrary.

Inheritance Hierarchy

System.Object
  Microsoft.VisualStudio.Modeling.ModelElement
    Microsoft.VisualStudio.Modeling.DslDefinition.DomainElement
      Microsoft.VisualStudio.Modeling.DslDefinition.AttributedDomainElement
        Microsoft.VisualStudio.Modeling.DslDefinition.NamedDomainElement
          Microsoft.VisualStudio.Modeling.DslDefinition.DslLibraryBase
            Microsoft.VisualStudio.Modeling.DslDefinition.DslLibrary
              Microsoft.VisualStudio.Modeling.DslDefinition.Dsl

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

Syntax

'宣告
<DomainObjectIdAttribute("1a8ff2a4-90d2-4c48-a80b-920f15abd7cb")> _
<ValidationStateAttribute(ValidationState.Enabled)> _
<DomainModelOwnerAttribute(GetType(DslDefinitionModelDomainModel))> _
<CLSCompliantAttribute(True)> _
<DisplayNameResourceAttribute("Microsoft.VisualStudio.Modeling.DslDefinition.Dsl.DisplayName",  _
    GetType(DslDefinitionModelDomainModel), "Microsoft.VisualStudio.Modeling.DslDefinition.GeneratedCode.DomainModelResx")> _
<DescriptionResourceAttribute("Microsoft.VisualStudio.Modeling.DslDefinition.Dsl.Description",  _
    GetType(DslDefinitionModelDomainModel), "Microsoft.VisualStudio.Modeling.DslDefinition.GeneratedCode.DomainModelResx")> _
<ValidationStateAttribute(ValidationState.Enabled)> _
Public NotInheritable Class Dsl _
    Inherits DslLibrary
[DomainObjectIdAttribute("1a8ff2a4-90d2-4c48-a80b-920f15abd7cb")]
[ValidationStateAttribute(ValidationState.Enabled)]
[DomainModelOwnerAttribute(typeof(DslDefinitionModelDomainModel))]
[CLSCompliantAttribute(true)]
[DisplayNameResourceAttribute("Microsoft.VisualStudio.Modeling.DslDefinition.Dsl.DisplayName", 
    typeof(DslDefinitionModelDomainModel), "Microsoft.VisualStudio.Modeling.DslDefinition.GeneratedCode.DomainModelResx")]
[DescriptionResourceAttribute("Microsoft.VisualStudio.Modeling.DslDefinition.Dsl.Description", 
    typeof(DslDefinitionModelDomainModel), "Microsoft.VisualStudio.Modeling.DslDefinition.GeneratedCode.DomainModelResx")]
[ValidationStateAttribute(ValidationState.Enabled)]
public sealed class Dsl : DslLibrary
[DomainObjectIdAttribute(L"1a8ff2a4-90d2-4c48-a80b-920f15abd7cb")]
[ValidationStateAttribute(ValidationState::Enabled)]
[DomainModelOwnerAttribute(typeof(DslDefinitionModelDomainModel))]
[CLSCompliantAttribute(true)]
[DisplayNameResourceAttribute(L"Microsoft.VisualStudio.Modeling.DslDefinition.Dsl.DisplayName", 
    typeof(DslDefinitionModelDomainModel), L"Microsoft.VisualStudio.Modeling.DslDefinition.GeneratedCode.DomainModelResx")]
[DescriptionResourceAttribute(L"Microsoft.VisualStudio.Modeling.DslDefinition.Dsl.Description", 
    typeof(DslDefinitionModelDomainModel), L"Microsoft.VisualStudio.Modeling.DslDefinition.GeneratedCode.DomainModelResx")]
[ValidationStateAttribute(ValidationState::Enabled)]
public ref class Dsl sealed : public DslLibrary
[<Sealed>]
[<DomainObjectIdAttribute("1a8ff2a4-90d2-4c48-a80b-920f15abd7cb")>]
[<ValidationStateAttribute(ValidationState.Enabled)>]
[<DomainModelOwnerAttribute(typeof(DslDefinitionModelDomainModel))>]
[<CLSCompliantAttribute(true)>]
[<DisplayNameResourceAttribute("Microsoft.VisualStudio.Modeling.DslDefinition.Dsl.DisplayName", 
    typeof(DslDefinitionModelDomainModel), "Microsoft.VisualStudio.Modeling.DslDefinition.GeneratedCode.DomainModelResx")>]
[<DescriptionResourceAttribute("Microsoft.VisualStudio.Modeling.DslDefinition.Dsl.Description", 
    typeof(DslDefinitionModelDomainModel), "Microsoft.VisualStudio.Modeling.DslDefinition.GeneratedCode.DomainModelResx")>]
[<ValidationStateAttribute(ValidationState.Enabled)>]
type Dsl =  
    class
        inherit DslLibrary
    end
public final class Dsl extends DslLibrary

The Dsl type exposes the following members.

Constructors

  Name Description
Public method Dsl(Partition, array<PropertyAssignment[]) Constructor
Public method Dsl(Store, array<PropertyAssignment[]) Constructor

Top

Properties

  Name Description
Public property AccessModifier Gets or sets the value of AccessModifier domain property. Determines if the access modifier for the class generated from the DSL library is public or internal. (Inherited from DslLibraryBase.)
Public property AllLibraries Returns a list of directly and indirectly imported libraries including this object. (Inherited from DslLibrary.)
Public property Attributes Gets a list of Attributes. (Inherited from AttributedDomainElement.)
Public property Build Gets or sets the value of Build domain property. Last part of the four part version number. (Inherited from DslLibraryBase.)
Public property Classes Gets a list of Classes. Domain classes defined by the DSL library. (Inherited from DslLibraryBase.)
Public property CompanyName Gets or sets the value of CompanyName domain property. Name of the company for which the designer generated will be registered in Visual Studio.
Public property ConnectionBuilders Gets a list of ConnectionBuilders. Connection builders defining the DSL library. (Inherited from DslLibraryBase.)
Public property Connectors Gets a list of Connectors. Connectors defined by DSL library. (Inherited from DslLibraryBase.)
Public property CustomAttributes Gets or sets the value of CustomAttributes domain property. Used to attribute the code generated from this element. (Inherited from AttributedDomainElement.)
Public property Description Gets or sets the value of Description domain property. Used in the UI and in the code documentation of the generated designer. (Inherited from AttributedDomainElement.)
Public property Diagram Gets or sets Diagram. Diagram defined by the DSL.
Public property DiagramElements Gets a list of DiagramElements. Diagram elements defined by the DSL library. (Inherited from DslLibraryBase.)
Public property DisplayName Gets or sets the value of DisplayName domain property. The name that will be displayed in the generated designer for this element. (Inherited from NamedDomainElement.)
Public property DslLibraryImports Gets a list of DslLibraryImports. Description for Microsoft.VisualStudio.Modeling.DslDefinition.DslLibraryHasDslLibraryImports.DslLibrary (Inherited from DslLibraryBase.)
Public property Editor Gets or sets Editor. Editor defined by the DSL.
Public property Explorer Gets or sets Explorer. Explorer defined by the DSL.
Public property ExplorerBehavior Gets or sets ExplorerBehavior. Explorer behavior defined by the DSL library. (Inherited from DslLibraryBase.)
Public property ExplorerTitleMenuName Returns the text used in both the Model Explorer and menu (ie Menu View->"Other Windows"->ExplorerTitleMenuName) It constructs the title based on the Explorer.Title + "Explorer"
Public property HelpKeyword Gets or sets the value of HelpKeyword domain property. Optional keyword used to index F1 help for this element. (Inherited from NamedDomainElement.)
Public property Id Gets the ID of the element. (Inherited from ModelElement.)
Public property IsActive Gets the IsActive flag and verifies to see whether the element is active. (Inherited from ModelElement.)
Public property IsDeleted Gets the IsDeleted flag and checks to see whether the element has been deleted from the model. (Inherited from ModelElement.)
Public property IsDeleting Gets the IsDeleting flag and verifies whether the element is currently being deleted from the model. (Inherited from ModelElement.)
Public property IsDescriptionTracking Gets or sets the value of IsDescriptionTracking domain property. If True, the Description property tracks other data in the DSL definition. (Inherited from AttributedDomainElement.)
Public property IsDisplayNameTracking Gets or sets the value of IsDisplayNameTracking domain property. If True, the DisplayName property tracks other data in the DSL definition. (Inherited from NamedDomainElement.)
Public property IsPackageNamespaceTracking Gets or sets the value of IsPackageNamespaceTracking domain property. If True, the PackageNamespace property tracks other data in the DSL definition.
Public property MajorVersion Gets or sets the value of MajorVersion domain property. First part of the four part version number. (Inherited from DslLibraryBase.)
Public property MinorVersion Gets or sets the value of MinorVersion domain property. Second part of the four part version number. (Inherited from DslLibraryBase.)
Public property Name Gets or sets the value of Name domain property. Name of this element. (Inherited from NamedDomainElement.)
Public property Namespace Gets or sets the value of Namespace domain property. Namespace of a DSL library. (Inherited from DslLibraryBase.)
Public property NormalizedFilePath Gets or sets the value of NormalizedFilePath domain property. Description for Microsoft.VisualStudio.Modeling.DslDefinition.DslLibrary.Normalized File Path (Inherited from DslLibraryBase.)
Public property Notes Gets or sets the value of Notes domain property. Informal notes associated with this element. (Inherited from DomainElement.)
Public property PackageGuid Gets or sets the value of PackageGuid domain property. The guid for the Visual Studio package generated for this DSL.
Public property PackageNamespace Gets or sets the value of PackageNamespace domain property. The namespace for the Visual Studio package generated for this DSL.
Public property Partition Gets or sets the Partition that contains the element. (Inherited from ModelElement.)
Public property ProductName Gets or sets the value of ProductName domain property. The name of the product that will be registered for the Visual Studio package generated for this DSL.
Protected property ProxyIsNameTracking (Inherited from NamedDomainElement.)
Public property ReferenceTypes Gets a list of ReferenceTypes. Reference types defined by the DSL library. (Inherited from DslLibraryBase.)
Public property Relationships Gets a list of Relationships. Domain relationships defined by the DSL library. (Inherited from DslLibraryBase.)
Public property Revision Gets or sets the value of Revision domain property. Third part of the four part version number. (Inherited from DslLibraryBase.)
Public property Shapes Gets a list of Shapes. Shapes defined by the DSL library. (Inherited from DslLibraryBase.)
Public property Store Gets the Store that contains the element. (Inherited from ModelElement.)
Public property Types Gets a list of Types. Domain types defined by the DSL library. (Inherited from DslLibraryBase.)
Public property XmlSerializationBehavior Gets or sets XmlSerializationBehavior. Xml serialization behavior defined by the DSL library. (Inherited from DslLibraryBase.)

Top

Methods

  Name Description
Protected method CalculateDescription Calculate the value of Description (Inherited from DslLibrary.)
Protected method CalculateName Calculates the value of Name (Inherited from NamedDomainElement.)
Protected method CanMerge Returns a value indicating whether the source element represented by the specified root ProtoElement can be added to this element. (Inherited from DslLibraryBase.)
Protected method ChooseMergeTarget(ElementGroup) Selects a target element to accept as its child an element that the user wants to copy, drag, or create. (Inherited from ModelElement.)
Protected method ChooseMergeTarget(ElementGroupPrototype) Selects a target element to accept as its child an element that the user wants to copy, drag, or create. (Inherited from ModelElement.)
Public method Copy() Creates a copy of the element in the model. (Inherited from ModelElement.)
Public method Copy(IEnumerable<Guid>) Creates a copy of the element and its child links and elements. (Inherited from ModelElement.)
Public method Delete() Deletes an element from the model. (Inherited from ModelElement.)
Public method Delete(array<Guid[]) Deletes an element from the model. (Inherited from ModelElement.)
Public method Equals Determines whether the specified Object is equal to the current Object. (Inherited from 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 GetDomainClass Gets the most-derived domain class for this element. (Inherited from ModelElement.)
Public method GetFullName Gets the full name of this DslLibrary (Inherited from DslLibrary.)
Public method GetHashCode Serves as a hash function for a particular type. (Inherited from Object.)
Public method GetRelativeName Gets the name of the DslLibrary relative to the current namespace. If the current namespace is the same as this.Namespace, then we return this.Name. If not, we return this.GetFullName() (Inherited from DslLibrary.)
Protected method GetRoleCollection<TCollection, TElement>(Guid) Gets or creates the linked element collection (Inherited from ModelElement.)
Public method GetType Gets the Type of the current instance. (Inherited from Object.)
Protected method MemberwiseClone Creates a shallow copy of the current Object. (Inherited from Object.)
Protected method MergeConfigure Allows the model element to configure itself immediately after the Merge process has related it to the target element. (Inherited from ModelElement.)
Protected method MergeDisconnect Performs operation opposite to MergeRelate - i.e. disconnects a given element from the current one (removes links created by MergeRelate). (Inherited from DslLibraryBase.)
Protected method MergeRelate Called by the Merge process to create a relationship between this target element and the specified source element. Typically, a parent-child relationship is established between the target element (the parent) and the source element (the child), but any relationship can be established. (Inherited from DslLibraryBase.)
Protected method OnCopy Called when this element has been created as a copy of another element. (Inherited from ModelElement.)
Protected method OnDeleted Called when this element has been deleted from the model. (Inherited from ModelElement.)
Protected method OnDeleting Called when this element is about to be deleted. (Inherited from ModelElement.)
Protected method OnNameChanged Called when a DslLibrary's Name changes (Inherited from DslLibrary.)
Protected method OnNamespaceChanged Called when the Namespace of a DslLibrary changes (Inherited from DslLibrary.)
Protected method OnResurrected Called when this element has been added back to a model. (Inherited from ModelElement.)
Protected method OnRolePlayerPositionChanged Called when the position of a role has changed. (Inherited from ModelElement.)
Protected method OnRolePlayerPositionChanging Called when a role player position is about to change. (Inherited from ModelElement.)
Public method ToString Returns a string that represents the current object. (Inherited from Object.)
Protected method ValidateMonikerAmbiguity Clears the moniker's lookup table and starts the validation (Inherited from DslLibrary.)

Top

Extension Methods

  Name Description
Public Extension Method AddExtension(Guid) Overloaded. Extend this ModelElement with newly instantiated extension of the identified domain type. An InvalidOperationException will be thrown if the element already has an extension of that type. (Defined by ModelElementExtensionMethods.)
Public Extension Method AddExtension(Type) Overloaded. Extend this ModelElement with a newly instantiated extension of the specified type. An InvalidOperationException will be thrown if the element already has an extension of that type. (Defined by ModelElementExtensionMethods.)
Public Extension Method AddExtension(DomainClassInfo) Overloaded. Extend this ModelElement with a newly instantiated extension of the specified domain type. An InvalidOperationException will be thrown if the element already has an extension of that type. (Defined by ModelElementExtensionMethods.)
Public Extension Method AddExtension(ExtensionElement) Overloaded. Extend this ModelElement with a specific extension. An InvalidOperationException will be thrown if the element already has an extension of the same type. (Defined by ModelElementExtensionMethods.)
Public Extension Method AddExtension<T>() Overloaded. Extend this ModelElement with a newly instantiated extension of a particular type. An InvalidOperationException will be thrown if the element already has an extension of the same type. (Defined by ModelElementExtensionMethods.)
Public Extension Method CanDelete Deletes the element from the model. (Defined by ImmutabilityExtensionMethods.)
Public Extension Method GetAllExtensions Return an enumerable that performs a breadth first traversal across the tree of extension elements embedded in this ModelElement. (Defined by ModelElementExtensionMethods.)
Public Extension Method GetBaseElement Returns the root of the virtual MEL in which the specified ModelElement is participating. (Defined by ModelElementExtensionMethods.)
Public Extension Method GetExtension(Guid) Overloaded. (Defined by ModelElementExtensionMethods.)
Public Extension Method GetExtension(Type) Overloaded. Get the ExtensionElement of the specified type from the available extensions of this ModelElement. If the element has no such extension then an InvalidOperationException will be raised. (Defined by ModelElementExtensionMethods.)
Public Extension Method GetExtension(DomainClassInfo) Overloaded. (Defined by ModelElementExtensionMethods.)
Public Extension Method GetExtension<T>() Overloaded. Get the ExtensionElement of the specified type from the available extensions of this ModelElement. If the element has no such extension then an InvalidOperationException will be raised. (Defined by ModelElementExtensionMethods.)
Public Extension Method GetLocks Get the lock flags for this element. This will include any locks enabled on the Partition containing the element. (Defined by ImmutabilityExtensionMethods.)
Public Extension Method IsExtendedBy(Guid) Overloaded. Query whether this ModelElement is currently extended by an ExtensionElement of a particular type. (Defined by ModelElementExtensionMethods.)
Public Extension Method IsExtendedBy(Type) Overloaded. Query whether this ModelElement is currently extended by an ExtensionElement of a particular type. (Defined by ModelElementExtensionMethods.)
Public Extension Method IsExtendedBy(DomainClassInfo) Overloaded. Query whether this ModelElement is currently extended by an ExtensionElement of a particular type. (Defined by ModelElementExtensionMethods.)
Public Extension Method IsLocked Test whether this element has any of a specified set of locks (Defined by ImmutabilityExtensionMethods.)
Public Extension Method RemoveExtension(Type) Overloaded. Remove any extension of this ModelElement that is of a particular type. (Defined by ModelElementExtensionMethods.)
Public Extension Method RemoveExtension(Guid) Overloaded. Remove any extension of the specified ModelElement that is of a particular type. (Defined by ModelElementExtensionMethods.)
Public Extension Method RemoveExtension(DomainClassInfo) Overloaded. Remove any extension of the specified ModelElement that is of a particular type. (Defined by ModelElementExtensionMethods.)
Public Extension Method RemoveExtension(ExtensionElement) Overloaded. Remove a specified ExtensionElement from the extensions of this ModelElement. (Defined by ModelElementExtensionMethods.)
Public Extension Method SetLocks Set the lock flags of this element (Defined by ImmutabilityExtensionMethods.)
Public Extension Method TryGetExtension(Guid) Overloaded. (Defined by ModelElementExtensionMethods.)
Public Extension Method TryGetExtension(Type) Overloaded. (Defined by ModelElementExtensionMethods.)
Public Extension Method TryGetExtension(DomainClassInfo) Overloaded. (Defined by ModelElementExtensionMethods.)
Public Extension Method TryGetExtension<T>() Overloaded. Get the ExtensionElement of the specified type from the available extensions of this ModelElement. If this element has no such extension then the result will be null. (Defined by ModelElementExtensionMethods.)

Top

Fields

  Name Description
Public fieldStatic member CompanyNameDomainPropertyId CompanyName domain property Id.
Public fieldStatic member DomainClassId Dsl domain class Id.
Public fieldStatic member IsPackageNamespaceTrackingDomainPropertyId IsPackageNamespaceTracking domain property Id.
Public fieldStatic member PackageGuidDomainPropertyId PackageGuid domain property Id.
Public fieldStatic member PackageNamespaceDomainPropertyId PackageNamespace domain property Id.
Public fieldStatic member ProductNameDomainPropertyId ProductName domain property Id.

Top

Explicit Interface Implementations

  Name Description
Explicit interface implemetationPrivate method IMergeElements.CanMerge Returns true if this element can merge with the content of the prototype. (Inherited from ModelElement.)
Explicit interface implemetationPrivate method IMergeElements.ChooseMergeTarget(ElementGroup) (Inherited from ModelElement.)
Explicit interface implemetationPrivate method IMergeElements.ChooseMergeTarget(ElementGroupPrototype) (Inherited from ModelElement.)
Explicit interface implemetationPrivate method IMergeElements.MergeConfigure (Inherited from ModelElement.)
Explicit interface implemetationPrivate method IMergeElements.MergeDisconnect (Inherited from ModelElement.)
Explicit interface implemetationPrivate method IMergeElements.MergeRelate (Inherited from ModelElement.)

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