Solution2.SolutionBuild 属性

获取解决方案的 SolutionBuild 对象,该对象表示位于解决方案级的生成自动化模型的根。

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

语法

声明
ReadOnly Property SolutionBuild As SolutionBuild
SolutionBuild SolutionBuild { get; }
property SolutionBuild^ SolutionBuild {
    SolutionBuild^ get ();
}
abstract SolutionBuild : SolutionBuild with get
function get SolutionBuild () : SolutionBuild

属性值

类型:SolutionBuild
SolutionBuild 对象。

示例

有关如何运行此外接程序代码的信息,请参见如何:编译和运行自动化对象模型代码示例

下面的示例列出打开的解决方案的生成依赖项、将生成类型设置为发布、以及生成解决方案。

Public Sub OnConnection(ByVal application As Object, _
 ByVal connectMode As ext_ConnectMode, ByVal addInInst As Object, _
 ByRef custom As Array) Implements IDTExtensibility2.OnConnection
    _applicationObject = CType(application, DTE2)
    _addInInstance = CType(addInInst, AddIn)
    PropertiesExample(_applicationObject)
End Sub

Sub PropertiesExample(ByVal dte As DTE2)
    ' This add-in lists the number of build dependencies,
    ' sets the configuration to Release, and builds the solution.
    ' Open a solution in Visual Studio before 
    ' running this example.
    Try
        Dim soln As Solution2 =  _
        CType(_applicationObject.Solution, Solution2)
        Dim solnBld As SolutionBuild2
        solnBld = CType(soln.SolutionBuild, SolutionBuild2)
        Dim bld As BuildDependencies
        bld = solnBld.BuildDependencies
        MsgBox("The project " & bld.Item(1).Project.Name & " has " _
        & bld.Count.ToString() & " build dependencies.")
        MsgBox("Set the configuration to release and build...")
        solnBld.SolutionConfigurations.Item("Release").Activate()
        solnBld.Build()
    Catch ex As System.Exception
        MsgBox(ex.ToString)
    End Try
End Sub
using System.Windows.Forms;
public void OnConnection(object application,
 Extensibility.ext_ConnectMode connectMode, object addInInst,
 ref System.Array custom)
{
    _applicationObject = (DTE2)application;
    _addInInstance = (AddIn)addInInst;
    // Pass the applicationObject member variable to the code example.
    ProjectExample((DTE2)_applicationObject);
}

public void ProjectExample(DTE2 dte)
{
    // This add-in sets the configuration to Release and 
    // builds the solution. 
    // Open a solution in 
    // Visual Studio before running this example.
    try
    {
        Solution2 soln = (Solution2)_applicationObject.Solution;
        SolutionBuild2 solnBld = (SolutionBuild2)soln.SolutionBuild;
        BuildDependencies bld = solnBld.BuildDependencies;
        MessageBox.Show("The project " + bld.Item(1).Project.Name 
+ " has " + bld.Count.ToString() + " build dependencies.");
        MessageBox.Show
("Set the configuration to release and build...");
        solnBld.SolutionConfigurations.Item("Release").Activate();
        solnBld.Build(true );
    }
    catch(SystemException ex)
    {
        MessageBox.Show("ERROR: " + ex);
    }
}

.NET Framework 安全性

请参阅

参考

Solution2 接口

EnvDTE80 命名空间