IDatabaseProjectNode Interface

This interface represents the top-level node in Solution Explorer. You can access this class in several ways. By using Visual Studio Design Time Extensibility (DTE), you can navigate through the solution and cast the Object (project.Object as IVsHierarchy, in C#) of the appropriate EnvDTE.Project. If you navigate by using IVsSolution and its associated projects, you can cast the IVsProject, IVsHierarchy, or IVsUIHierarchy to an IDatabaseProjectNode. Nodes underneath this class will be IDatabaseNodes also: either IDatabaseFolderNode, IDatabaseFileNode, or IDatabaseReferenceNode.

This API is not CLS-compliant. 

Namespace:  Microsoft.VisualStudio.Data.Schema.Package.Project
Assembly:  Microsoft.VisualStudio.Data.Schema.Package (in Microsoft.VisualStudio.Data.Schema.Package.dll)

Syntax

'Declaration
<CLSCompliantAttribute(False)> _
Public Interface IDatabaseProjectNode _
    Inherits IDatabaseNode
[CLSCompliantAttribute(false)]
public interface IDatabaseProjectNode : IDatabaseNode
[CLSCompliantAttribute(false)]
public interface class IDatabaseProjectNode : IDatabaseNode
[<CLSCompliantAttribute(false)>]
type IDatabaseProjectNode =  
    interface
        interface IDatabaseNode
    end
public interface IDatabaseProjectNode extends IDatabaseNode

The IDatabaseProjectNode type exposes the following members.

Properties

  Name Description
Public property AppDesignerFolder Gets the App Designer folder. For database projects this is usually the "Properties" folder.
Public property AppDesignerFolderName Gets the App Designer folder name. For database projects this is usually "Properties".
Public property BuildProject Gets the build project that loaded the project file.
Public property Caption Gets the caption that is displayed in Solution Explorer. (Inherited from IDatabaseNode.)
Public property Children Gets the list of child nodes for this node. (Inherited from IDatabaseNode.)
Public property ConfigurationProvider Returns the configuration provider for this project.
Public property CurrentConfigName Gets the name of the current configuration.
Public property DatabaseProjectBuildActionHelper Gets the helper that converts build actions to localized names and back to build actions.
Public property DatabaseSchemaProvider Gets the DatabaseSchemaProvider for this project.
Public property DataSchemaModel Gets the schema manager that is initialized by the database schema provider.
Public property DebuggableDatabaseProject Gets the interface that is used to control the debuggable database project configuration interface.
Public property DependencyViewController Gets the feature that controls our hive in the Dependency View.
Public property DirectoryName Gets the directory location for this node. (Inherited from IDatabaseNode.)
Public property DisableDragDropOrCopyPaste Gets or sets a value that indicates whether the project disallows drag-and-drop operations and copy-and-paste operations.
Public property ErrorManager Gets the error manager that is provided by the project system.
Public property ExtensionManager Gets the extension manager for this project.
Public property FileScriptCache Gets the file manager that is used to populate the model with files.
Public property Id Gets the unique identifier for this node in Solution Explorer. (Inherited from IDatabaseNode.)
Public property InDragDropOrCopyPaste Gets a value that indicates whether the project system is currently in a copy-and-paste operation or in a drag-and-drop operation.
Public property IsBuildInProgress Gets a value that indicates whether a project build is in progress.
Public property IsDeserializedProject Gets a value that indicates whether this project is deserialized.
Public property IsDisabled Gets or sets a value that indicates whether the project is disabled.
Public property IsImported Gets a value that indicates whether this node is to be imported into the project. (Inherited from IDatabaseNode.)
Public property IsNewProject Gets a value that indicates whether this project is a new project.
Public property IsNonMemberItem Gets a value that indicates whether this item is a non-member item of the project. (Inherited from IDatabaseNode.)
Public property IsProjectClosed Gets a value that indicates whether the project is closed.
Public property IsScriptsOnlyProject Gets a value that indicates whether this project was designed to be a scripts-only project, that is, a project that offers minimal processing.
Public property ModelBuilder Gets the model builder that is used to send scripts into the schema manager.
Public property ModelBuildInProgress Gets a value that indicates whether a model build is in progress.
Public property NodeProperties Gets the properties that are associated with this node. (Inherited from IDatabaseNode.)
Public property ParentNode Gets the parent for this node. (Inherited from IDatabaseNode.)
Public property ProjectBitmap Sets the bitmap for the main database project node.
Public property ProjectFile Gets the project file name.
Public property ProjectFolder Gets the folder where the project is created.
Public property ProjectManager Gets the top-level root node for this particular node. (Inherited from IDatabaseNode.)
Public property PropertiesContainer Gets the properties node.
Public property ReferenceContainer Gets the reference container node.
Public property ReferenceController This interface can be provided by database schema provider (DSP) vendors to customize how references function.
Public property SchemaViewController Gets the feature that controls the hive in Schema View.
Public property Site Gets a service provider callback object that is provided by the IDE that hosts the project manager.
Public property TaskHost Gets the ITaskHost that is used to initialize the project system and to interface with the build process.
Public property Url Gets the full path of this node on disk. (Inherited from IDatabaseNode.)
Public property UserInteractionServices Gets the UserInteractionServices for this project.

Top

Methods

  Name Description
Public method AddDatabaseReference Brings up the Add Database Reference dialog box if and only if the project has an IDatabaseProjectReferenceController extension.
Public method AddProjectReference Brings up the Add Reference dialog box if and only if the project has an IDatabaseProjectReferenceController extension.
Public method AddService Adds a service into the database project node.
Public method CreateFileNode(String, IDatabaseFileNode%) Adds a new file node to the hierarchy.
Public method CreateFileNode(IDatabaseNode, String, IDatabaseFileNode%) Adds a new file node to the hierarchy.
Public method CreateFileNodes This adds files to the hierarchy in a batch.
Public method CreateFolderNodes Walks the subpaths of a project-relative path and creates the folder nodes hierarchy if it is not present.
Public method ExcludeFromProject Excludes the specified list of nodes from the database project.
Public method FindNode Returns a file that is specified by its full path.
Public method GetBuildFilesInProjectFileOrder Returns all files with a build action of Build in a dictionary.
Public method GetCustomMetadata Returns the custom metadata for this node. (Inherited from IDatabaseNode.)
Public method GetItemAttribute Returns the metadata for this item in the project file. This call is just a convenience to GetItemAttribute. (Inherited from IDatabaseNode.)
Public method GetIVsHierarchy Returns the IVsHierarchy for this project.
Public method GetProjectFeatures<T> Returns a list of project features that support this interface.
Public method GetProjectProperty(String, Boolean, DatabaseProjectPropertyValueType) Returns the value of a project property.
Public method GetProjectProperty(String, Boolean, DatabaseProjectPropertyValueType, String) Returns the value of a project property.
Public method GetProjectPropertyAsBoolean Returns the value of a project property as a Boolean.
Public method GetProperty Returns a Visual Studio Integration Partner (VSIP) property, such as VSHPROPID_IsNonMemberItem. (Inherited from IDatabaseNode.)
Public method GetSelectedSolutionExplorerNodes Returns the selected Solution Explorer hierarchy nodes that are selected for this hierarchy.
Public method GetService Hook into GetService so the caller can provide database services.
Public method GetSingleSelectedSolutionExplorerNode Returns a single selected node that is owned by the root node.
Public method IncludeInProject Includes the specified list of nodes in the database project.
Public method OpenAddItemDialogFromSolutionExplorer A componentized way to open the Add Item dialog box from anywhere in the project system.
Public method OpenAddItemDialogWithContext Opens the Visual Studio Add New Item dialog box.
Public method OpenProjectDesigner Opens the project properties by using the specified initial page (if not Guid.Empty).
Public method QueryEditProjectFile Verifies whether the file can be written to. Returns false if the file is read-only or if it is not checked out and the user did not assign permission to change it.
Public method RecreateModel Disposes the DataSchemaModel for the current project system and re-creates an empty DataSchemaModel.
Public method RegisterForIdleProcessing Registers a component for idle processing.
Public method ReloadThisProject Reloads this project.
Public method Remove Removes items from the hierarchy. (Inherited from IDatabaseNode.)
Public method RemoveFromIdleProcessing Removes a component from idle processing.
Public method RemoveService Removes a service from the database project node.
Public method Save Saves the project file.
Public method SaveAllModelFiles Saves all files that are open in the Running Document Table that, when they are saved, would change the project system model.
Public method SetItemAttribute Sets the metadata for this item in the project file. This call is just a convenience to SetItemAttribute. (Inherited from IDatabaseNode.)
Public method SetProjectFileDirty Sets the dirty state of the project.
Public method SetProjectProperty(String, String, DatabaseProjectEventPropagation) Sets a project property.
Public method SetProjectProperty(String, String, DatabaseProjectPropertyComparisonType, DatabaseProjectEventPropagation) Sets a project property.
Public method SetProperty Sets a Visual Studio Integration Partner (VSIP) property, such as VSHPROPID_IsNonMemberItem. (Inherited from IDatabaseNode.)
Public method SubHierarchyContainsImportedNode Returns a value that indicates whether the sub-hierarchy for this node contains any imported nodes. (Inherited from IDatabaseNode.)
Public method SyncProjectSystem(DatabaseProjectProjectSyncOption) Calls to this method will flush and process any unprocessed files in the file manager feature.
Public method SyncProjectSystem(DatabaseProjectProjectSyncOption, Int32) Calls to this method will flush and process any unprocessed files in the file manager feature.

Top

Events

  Name Description
Public event AsyncModelBuildCompleted Raised when the model build has completed to provide the results from the model building thread.
Public event BuildActionChange Raised when the build action for a node has changed.
Public event BuildMacroRequest Raised to allow listeners to add new build macros to the pre-build and post-build macro dialog box.
Public event CanDeleteItemRequest Raised to determine whether a node can be deleted from Solution Explorer.
Public event CanEditRequest Raised to determine whether a node caption can be edited.
Public event DatabaseNodeAdded Indicates that a new node has been added to Solution Explorer.
Public event DatabaseNodeDeleted Raised when a node has been deleted from Solution Explorer.
Public event DatabaseNodeRenamed Raised when a node has been renamed in Solution Explorer.
Public event DataSchemaModelRecycled Raised after the DataSchemaModel that is owned by the project has been disposed and re-created.
Public event DataSchemaModelRecycling Raised before the DataSchemaModel that is owned by the project is disposed and re-created.
Public event FileIconRequest Raised when Solution Explorer requires an icon for a new file name extension.
Public event FinishedDragDropOrCopyPaste Raised after a drag-and-drop operation or a copy-and-paste operation has occurred.
Public event IsCodeFileRequest Raised when a node is added to the project.
Public event NewProjectCreated Raised after the project has been created.
Public event NodeAttributesChanged Raised when attributes for a node have changed.
Public event NodeExcludedFromProject Raised when a node has been excluded from the project.
Public event NodeIncludedInProject Raised when a node has been included in the project.
Public event ProjectClosed Raised after the project has closed.
Public event ProjectClosing Raised before a project closes.
Public event ProjectLoaded Raised after the project is loaded.
Public event ProjectOpened Raised after the project has opened.
Public event ProjectOpening Raised before the project opens.
Public event ProjectPropertyChanged Raised after project properties have changed.
Public event ProjectPropertyChanging Raised before project properties are changed.
Public event ProjectRenaming Raised before a project is renamed.
Public event ProjectSaved Raised after the project has been saved.
Public event ProjectSaving Raised before the project is saved.
Public event ServiceAdded Raised when a service has been added to the project.
Public event ShowDeleteRemoveMessage Raised when one or more nodes are deleted from Solution Explorer.

Top

See Also

Reference

Microsoft.VisualStudio.Data.Schema.Package.Project Namespace