Utilisation de l’infrastructure de package gérée pour implémenter un type de projet (C#)
Managed Package Framework (MPF) fournit des classes C# que vous pouvez utiliser ou hériter pour implémenter vos propres types de projet. Le MPF implémente de nombreuses interfaces que Visual Studio attend d’un type de projet, ce qui vous permet de vous concentrer sur l’implémentation des particularités de votre type de projet.
Utilisation du code source du projet MPF
Managed Package Framework for Projects (MPFProj) fournit des classes d’assistance pour la création et la gestion du nouveau système de projet. Contrairement aux autres classes du MPF, les classes de projet ne sont pas incluses dans les assemblys fournis avec Visual Studio. Au lieu de cela, les classes de projet sont fournies en tant que code source dans MPF pour Projects 2013.
Pour ajouter ce projet à votre solution VSPackage, procédez comme suit :
Téléchargez les fichiers MPFProj sur MPFProjectDir.
Dans le fichier MPFProjectDir\Dev10\Src\CSharp\ProjectBase.file, modifiez le bloc suivant :
<!-- Provide a default value for $(ProjectBasePath) --> <PropertyGroup> <ProjectBasePath >MPFProjDir\Dev10\Src\CSharp</ProjectBasePath> </PropertyGroup>
Créez un projet VSPackage.
Déchargez le projet VSPackage.
Modifiez le fichier .csproj VSPackage en ajoutant le bloc suivant avant les autres
<Import>
blocs :<Import Project="MPFProjectDir\Dev10\Src\CSharp\ProjectBase.files" /> <PropertyGroup> <!--To specify a different registry root to register your package, uncomment the TargetRegistryRoot tag and specify a registry root in it. <TargetRegistryRoot></TargetRegistryRoot>--> <RegisterOutputPackage>true</RegisterOutputPackage> <RegisterWithCodebase>true</RegisterWithCodebase> </PropertyGroup>
Enregistrez le projet.
Fermez et rouvrez la solution VSPackage.
Rouvrez le projet VSPackage. Vous devez voir un nouveau répertoire nommé ProjectBase.
Ajoutez la référence suivante au projet VSPackage :
Microsoft.Build.Tasks.4.0
Créez le projet.
Classes de hiérarchie
Le tableau suivant récapitule les classes du MPFProj qui prennent en charge les hiérarchies de projet. Pour plus d’informations, consultez Hiérarchies dans Visual Studio.
Nom de classe |
---|
Microsoft.VisualStudio.Package.HierarchyNode |
Microsoft.VisualStudio.Package.ProjectNode |
Microsoft.VisualStudio.Package.ProjectContainerNode |
Microsoft.VisualStudio.Package.FileNode |
Microsoft.VisualStudio.Package.FolderNode |
Microsoft.VisualStudio.Package.ReferenceContainerNode |
Microsoft.VisualStudio.Package.ReferenceNode |
Microsoft.VisualStudio.Package.ProjectReferenceNode |
Microsoft.VisualStudio.Package.ComReferenceNode |
Microsoft.VisualStudio.Package.AssemblyReferenceNode |
Microsoft.VisualStudio.Package.BuildDependency |
Classes de gestion des documents
Le tableau suivant répertorie les classes du MPF qui prennent en charge la gestion des documents. Pour plus d’informations, consultez Ouverture et enregistrement des éléments de projet.
Nom de classe |
---|
Microsoft.VisualStudio.Package.DocumentManager |
Microsoft.VisualStudio.Package.FileDocumentManager |
Classes de configuration et de sortie
Le tableau suivant répertorie les classes du MPF qui permettent aux types de projet de prendre en charge plusieurs configurations, telles que le débogage et la mise en production, et les collections de sorties de projet. Pour plus d’informations, consultez Gestion des options de configuration.
Nom de classe |
---|
Microsoft.VisualStudio.Package.ConfigProvider |
Microsoft.VisualStudio.Package.ProjectConfig |
Microsoft.VisualStudio.Package.BuildableProjectConfig |
Microsoft.VisualStudio.Package.OutputGroup |
Microsoft.VisualStudio.Package.ProjectElement |
Classes de support Automation
Le tableau suivant répertorie les classes du MPF qui prennent en charge l’automatisation afin que les utilisateurs de votre type de projet puissent écrire des compléments.
Nom de classe |
---|
Microsoft.VisualStudio.Package.Automation.OAProject |
Microsoft.VisualStudio.Package.Automation.OANavigableProjectItems |
Microsoft.VisualStudio.Package.Automation.OAProjectItems |
Microsoft.VisualStudio.Package.Automation.OAProjectItem |
Microsoft.VisualStudio.Package.Automation.OANestedProjectItem |
Classes de propriétés
Le tableau suivant répertorie les classes du MPF qui permettent aux types de projet d’ajouter des propriétés que les utilisateurs peuvent parcourir et modifier dans un navigateur de propriétés.
Nom de classe |
---|
Microsoft.VisualStudio.Package.LocalizableProperties |
Microsoft.VisualStudio.Package.NodeProperties |
Microsoft.VisualStudio.Package.FileNodeProperties |
Microsoft.VisualStudio.Package.ProjectNodeProperties |
Microsoft.VisualStudio.Package.FolderNodeProperties |
Microsoft.VisualStudio.Package.ReferenceNodeProperties |