使用托管包框架实现项目类型 (C#)

托管包框架(MPF)提供 C# 类,你可以使用或继承这些类来实现自己的项目类型。 MPF 实现了 Visual Studio 所期望的许多接口,使你能够专注于实现项目类别的具体细节。

使用 MPF 项目源代码

用于项目的托管包框架(MPFProj)提供用于创建和管理新项目系统的帮助程序类。 与 MPF 中的其他类不同,项目类不包括在 Visual Studio 附带的程序集中。 相反,项目类在 MPF for Projects 2013 中作为源代码提供。

若要将此项目添加到 VSPackage 解决方案,请执行以下作:

  1. 将 MPFProj 文件下载到 MPFProjectDir

  2. MPFProjectDir\Dev10\Src\CSharp\ProjectBase.文件中,更改以下块:

    <!-- Provide a default value for $(ProjectBasePath) -->
    <PropertyGroup>
      <ProjectBasePath >MPFProjDir\Dev10\Src\CSharp</ProjectBasePath>
    </PropertyGroup>
    
  3. 创建 VSPackage 项目。

  4. 卸载 VSPackage 项目。

  5. 通过在其他 <Import> 块之前添加以下块来编辑 VSPackage .csproj 文件:

    <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>
    
  6. 保存项目。

  7. 关闭并重新打开 VSPackage 解决方案。

  8. 重新打开 VSPackage 项目。 应会看到名为 ProjectBase 的新目录。

  9. 将以下引用添加到 VSPackage 项目:

    Microsoft.Build.Tasks.4.0
    
  10. 构建项目。

层次结构类

下表汇总了支持项目层次结构的 MPFProj 中的类。 有关详细信息,请参阅 Visual Studio 中的层次结构

类名
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

文档处理类

下表列出了支持文档处理的 MPF 中的类。 有关详细信息,请参阅 “打开和保存项目项”。

类名
Microsoft.VisualStudio.Package.DocumentManager
Microsoft.VisualStudio.Package.FileDocumentManager

配置和输出类

下表列出了 MPF 中的类,这些类允许项目类型支持多个配置,例如调试和发布以及项目输出集合。 有关详细信息,请参阅 “管理配置选项”。

类名
Microsoft.VisualStudio.Package.ConfigProvider
Microsoft.VisualStudio.Package.ProjectConfig
Microsoft.VisualStudio.Package.BuildableProjectConfig
Microsoft.VisualStudio.Package.OutputGroup
Microsoft.VisualStudio.Package.ProjectElement

自动化支持类

下表列出了 MPF 中支持自动化的类,以便您的项目类型的用户可以编写插件。

类名
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

属性类

下表列出了 MPF 中的类,这些类允许项目类型添加用户可以在属性浏览器中浏览和修改的属性。

类名
Microsoft.VisualStudio.Package.LocalizableProperties
Microsoft.VisualStudio.Package.NodeProperties
Microsoft.VisualStudio.Package.FileNodeProperties
Microsoft.VisualStudio.Package.ProjectNodeProperties
Microsoft.VisualStudio.Package.FolderNodeProperties
Microsoft.VisualStudio.Package.ReferenceNodeProperties