Share via


VSProject 接口

包含特定于某 Visual Basic 项目或 C# 项目的信息。 当项目为 Visual Basic 或 Visual C# 项目时,它由 Object 对象返回。

命名空间:  VSLangProj
程序集:  VSLangProj(在 VSLangProj.dll 中)

语法

声明
<GuidAttribute("2CFB826F-F6BF-480D-A546-95A0381CC411")> _
Public Interface VSProject
[GuidAttribute("2CFB826F-F6BF-480D-A546-95A0381CC411")]
public interface VSProject
[GuidAttribute(L"2CFB826F-F6BF-480D-A546-95A0381CC411")]
public interface class VSProject
[<GuidAttribute("2CFB826F-F6BF-480D-A546-95A0381CC411")>]
type VSProject =  interface end
public interface VSProject

VSProject 类型公开以下成员。

属性

  名称 说明
公共属性 BuildManager 获取 VSProject 的 BuildManager 对象。只读。
公共属性 DTE 获取顶级扩展性对象。
公共属性 Events 获取 VSProjectEvents 对象,它使您可以响应 ImportsReferencesBuildManager 对象的事件。
公共属性 Imports 获取与项目关联的 Imports 对象。对于 C# 项目,将 Imports 属性设置为 Nothing(nullnull 引用(在 Visual Basic 中为 Nothing) 引用)。只读。
公共属性 Project 获取与 Visual Basic 或 Visual C# 项目关联的泛型 Project 对象。只读。
公共属性 References 获取项目的 References 集合。只读。
公共属性 TemplatePath 获取包含 Visual Basic 或 C# 的项目项模板的目录的完整路径。只读。
公共属性 WebReferencesFolder 获取表示项目的“Web 引用”文件夹的 ProjectItem 对象。如果该文件夹不存在,此属性就会返回 Nothing(nullnull 引用(在 Visual Basic 中为 Nothing) 引用)。只读。
公共属性 WorkOffline 获取或设置指示 Web 项目是联机工作还是脱机工作的值。当脱机工作时,开发继续在项目文件的一个脱机存储区上进行,以便服务器中的项目文件不被更改。

页首

方法

  名称 说明
公共方法 AddWebReference 向项目添加对 Web 服务的引用。将向项目的“Web 引用”文件夹添加新的 Web 服务引用子文件夹。该新文件夹包含与该 Web 服务相关的若干其他项目项。该方法返回与新的“Web 服务”文件夹关联的 ProjectItem 对象。
公共方法 CopyProject 将 Web 项目的部分或全部内容复制到新位置。
公共方法 CreateWebReferencesFolder 为项目创建“Web 引用”文件夹。
公共方法 Exec 基础结构。 仅由 Microsoft 内部使用。
公共方法 GenerateKeyPairFiles 生成用于构成程序集强名称的公钥/私钥文件。
公共方法 GetUniqueFilename 生成项目内的唯一文件名。用于命名新项目项。
公共方法 Refresh 刷新“解决方案资源管理器”中项目的外观,刷新引用,并获取文件的最新编译的版本。

页首

备注

Project 是核心扩展性对象,可包含有关任意语言的项目的信息。 Project 对象的 Object 返回一个对象,该返回对象的类型取决于所用的项目语言。 在 Visual Basic 和 Visual C# 中,该对象为 VSProject 对象。

Object 返回 Object 数据类型。 然后,Object 返回的数据对象可显式转换为 VSProject。 下面的示例使用 CType 函数演示这种转换。 PrjKind 用于在转换前测试项目的类型。

示例

[Visual Basic]

' Macro Editor
' This example retrieves the VSProject object if the first project
' the solution is a Visual Basic or C# project. This routine assumes
' that the solution contains at least one project.
Imports VSLangProj
Sub VSProjectExample()
   Dim aProject As Project
   Dim aVSProject As VSProject
        
   aProject = DTE.Solution.Projects.Item(1)
   If (aProject.Kind = PrjKind.prjKindVBProject) _
   Or (aProject.Kind = PrjKind.prjKindCSharpProject) Then
      aVSProject = CType(DTE.Solution.Projects.Item(1).Object, VSProject)
      MsgBox(aVSProject.Project.FullName)
   Else
      MsgBox("The first project is not a Visual Basic or C# project.")
   End If
End Sub

请参阅

参考

VSLangProj 命名空间