BuildPropertyGroupとは? わかりやすく解説

BuildPropertyGroup クラス

メモ : このクラスは、.NET Framework version 2.0 で新しく追加されたものです。

BuildProperty オブジェクトのコレクションを表します。

名前空間: Microsoft.Build.BuildEngine
アセンブリ: Microsoft.Build.Engine (microsoft.build.engine.dll 内)
構文構文

Public Class BuildPropertyGroup
    Implements IEnumerable
Dim instance As BuildPropertyGroup
public class BuildPropertyGroup : IEnumerable
public ref class BuildPropertyGroup : IEnumerable
public class BuildPropertyGroup implements
 IEnumerable
public class BuildPropertyGroup implements
 IEnumerable
解説解説
使用例使用例

Project オブジェクトを作成し、LoadXml メソッドを使用して内容をプロジェクトに追加する例を次に示します。プロジェクト内の項目を追加、削除、および変更するために、BuildProperty クラス、BuildPropertyGroup クラス、および BuildPropertyGroupCollection クラスが使用されています。

Module Module1

    ''' <summary>
    ''' This code demonstrates the use of the following methods:
    '''     Engine constructor
    '''     Project constructor
    '''     Project.LoadFromXml
    '''     Project.Xml
    '''     BuildPropertyGroupCollection.GetEnumerator
    '''     BuildPropertyGroup.GetEnumerator
    '''     BuildProperty.Name (get)
    '''     BuildProperty.Value (set)
    '''     BuildPropertyGroup.RemoveProperty
    '''     BuildPropertyGroup.AddNewProperty
    ''' </summary>
    ''' <remarks></remarks>
    Sub Main()

        ' Create a new Engine object.
        Dim engine As New
 Engine(Environment.CurrentDirectory)

        ' Create a new Project object.
        Dim project As New
 Project(engine)

        ' Load the project with the following XML, which contains
        ' two PropertyGroups.
        project.LoadXml( _
            "<Project xmlns='http://schemas.microsoft.com/developer/msbuild/2003'>"
 & _
                "<PropertyGroup>" & _
                    "<Optimize>true</Optimize>"
 & _
                    "<WarningLevel>4</WarningLevel>"
 & _
                "</PropertyGroup>" & _
                "<PropertyGroup>" & _
                    "<OutputPath>bin\debug\</OutputPath>"
 & _
                    "<RemoveThisPropertyPlease>1</RemoveThisPropertyPlease>"
 & _
                "</PropertyGroup>" & _
            "</Project>")

        ' Iterate through each PropertyGroup in the Project.  There
 are two.
        For Each pg As BuildPropertyGroup
 In project.PropertyGroups

            Dim propertyToRemove As BuildProperty
            propertyToRemove = Nothing

            ' Iterate through each Property in the PropertyGroup.
            For Each buildProperty As
 BuildProperty In pg

                ' If the property's name is "RemoveThisPropertyPlease",
 then
                ' store a reference to this property in a local variable
,
                ' so we can remove it later.
                If buildProperty.Name = "RemoveThisPropertyPlease"
 Then
                    propertyToRemove = buildProperty
                End If

                ' If the property's name is "OutputPath",
 change its value
                ' from "bin\debug\" to "bin\release\".
                If buildProperty.Name = "OutputPath"
 Then
                    buildProperty.Value = "bin\release\"
                End If

            Next

            ' Remove the property named "RemoveThisPropertyPlease"
 from the
            ' PropertyGroup
            If Not propertyToRemove Is
 Nothing Then
                pg.RemoveProperty(propertyToRemove)
            End If

            ' For each PropertyGroup that we found, add to the end of
 it
            ' a new property called "MyNewProperty".
            pg.AddNewProperty("MyNewProperty", "MyNewValue")

        Next

        '  The project now looks like this:
        ' 
        '      <?xml version="1.0" encoding="utf-16"?>
        '      <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
        '        <PropertyGroup>
        '          <Optimize>true</Optimize>
        '          <WarningLevel>4</WarningLevel>
        '          <MyNewProperty>MyNewValue</MyNewProperty>
        '        </PropertyGroup>
        '        <PropertyGroup>
        '          <OutputPath>bin\release</OutputPath>
        '          <MyNewProperty>MyNewValue</MyNewProperty>
        '        </PropertyGroup>
        '      </Project>
        Console.WriteLine(project.Xml)

    End Sub

End Module
using System;
using System.Collections.Generic;
using System.Text;

using Microsoft.Build.BuildEngine;

namespace AddNewProperty
{
    class Program
    {
        /// <summary>
        /// This code demonstrates the use of the following methods:
        ///     Engine constructor
        ///     Project constructor
        ///     Project.LoadFromXml
        ///     Project.Xml
        ///     BuildPropertyGroupCollection.GetEnumerator
        ///     BuildPropertyGroup.GetEnumerator
        ///     BuildProperty.Name (get)
        ///     BuildProperty.Value (set)
        ///     BuildPropertyGroup.RemoveProperty
        ///     BuildPropertyGroup.AddNewProperty
        /// </summary>
        static void Main()
        {
            // Create a new Engine object.
            Engine engine = new Engine(Environment.CurrentDirectory);

            // Create a new Project object.
            Project project = new Project(engine);

            // Load the project with the following XML, which contains
            // two PropertyGroups.
            project.LoadXml(@"
                <Project xmlns='http://schemas.microsoft.com/developer/msbuild/2003'>

                    <PropertyGroup>
                        <Optimize>true</Optimize>
                        <WarningLevel>4</WarningLevel>
                    </PropertyGroup>

                    <PropertyGroup>
                        <OutputPath>bin\debug\</OutputPath>
                        <RemoveThisPropertyPlease>1</RemoveThisPropertyPlease>
                    </PropertyGroup>

                </Project>
                ");

            // Iterate through each PropertyGroup in the Project.  There
 are two.
            foreach (BuildPropertyGroup pg in
 project.PropertyGroups)
            {
                BuildProperty propertyToRemove = null;

                // Iterate through each Property in the PropertyGroup.
                foreach (BuildProperty property in
 pg)
                {
                    // If the property's name is "RemoveThisPropertyPlease",
 then
                    // store a reference to this property in a local
 variable,
                    // so we can remove it later.
                    if (property.Name == "RemoveThisPropertyPlease")
                    {
                        propertyToRemove = property;
                    }

                    // If the property's name is "OutputPath",
 change its value
                    // from "bin\debug\" to "bin\release\".
                    if (property.Name == "OutputPath")
                    {
                        property.Value = @"bin\release\";
                    }
                }

                // Remove the property named "RemoveThisPropertyPlease"
 from the
                // PropertyGroup
                if (propertyToRemove != null)
                {
                    pg.RemoveProperty(propertyToRemove);
                }

                // For each PropertyGroup that we found, add to the
 end of it
                // a new property called "MyNewProperty".
                pg.AddNewProperty("MyNewProperty", "MyNewValue");
            }

            // The project now looks like this:
            //
            //     <?xml version="1.0" encoding="utf-16"?>
            //     <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
            //       <PropertyGroup>
            //         <Optimize>true</Optimize>
            //         <WarningLevel>4</WarningLevel>
            //         <MyNewProperty>MyNewValue</MyNewProperty>
            //       </PropertyGroup>
            //       <PropertyGroup>
            //         <OutputPath>bin\release</OutputPath>
            //         <MyNewProperty>MyNewValue</MyNewProperty>
            //       </PropertyGroup>
            //     </Project>
            Console.WriteLine(project.Xml);
        }
    }
}
継承階層継承階層
System.Object
  Microsoft.Build.BuildEngine.BuildPropertyGroup
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
BuildPropertyGroup メンバ
Microsoft.Build.BuildEngine 名前空間

BuildPropertyGroup コンストラクタ


BuildPropertyGroup プロパティ


パブリック プロパティパブリック プロパティ

  名前 説明
パブリック プロパティ Condition プロパティ グループの Condition 属性の値を取得または設定します。
パブリック プロパティ Count BuildPropertyGroup 内の BuildProperty オブジェクトの数を示す値を取得します。
パブリック プロパティ IsImported プロパティ グループがプロジェクトにインポートされたかどうかを示す値を取得または設定します。
パブリック プロパティ Item この BuildPropertyGroup 内の BuildProperty オブジェクトを取得または設定します。
参照参照

関連項目

BuildPropertyGroup クラス
Microsoft.Build.BuildEngine 名前空間

BuildPropertyGroup メソッド


パブリック メソッドパブリック メソッド

( プロテクト メソッド も参照)
  名前 説明
パブリック メソッド AddNewProperty オーバーロードされます。 新しい BuildProperty を BuildPropertyGroup に追加します。
パブリック メソッド Clear Condition プロパティ値およびすべての BuildProperty オブジェクトを BuildPropertyGroup から削除します。
パブリック メソッド Clone BuildPropertyGroup の詳細コピーまたは簡易コピーを作成します。
パブリック メソッド Equals  オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 ( Object から継承されます。)
パブリック メソッド GetEnumerator BuildPropertyGroup を反復処理する列挙子を取得します。
パブリック メソッド GetHashCode  特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 ( Object から継承されます。)
パブリック メソッド GetType  現在のインスタンスの Type を取得します。 ( Object から継承されます。)
パブリック メソッド ReferenceEquals  指定した複数の Object インスタンスが同一かどうかを判断します。 ( Object から継承されます。)
パブリック メソッド RemoveProperty オーバーロードされます。 指定した BuildProperty を BuildPropertyGroup から削除します。
パブリック メソッド SetProperty オーバーロードされます。 指定した Name を持つ BuildProperty の Value を設定します。
パブリック メソッド ToString  現在の Object を表す String を返します。 ( Object から継承されます。)
プロテクト メソッドプロテクト メソッド
参照参照

関連項目

BuildPropertyGroup クラス
Microsoft.Build.BuildEngine 名前空間

BuildPropertyGroup メンバ

BuildProperty オブジェクトのコレクションを表します。

BuildPropertyGroup データ型で公開されるメンバを以下の表に示します。


パブリック コンストラクタパブリック コンストラクタ
  名前 説明
パブリック メソッド BuildPropertyGroup BuildPropertyGroup クラスの新しいインスタンスを初期化します。
パブリック プロパティパブリック プロパティ
  名前 説明
パブリック プロパティ Condition プロパティ グループの Condition 属性の値を取得または設定します。
パブリック プロパティ Count BuildPropertyGroup 内の BuildProperty オブジェクトの数を示す値を取得します。
パブリック プロパティ IsImported プロパティ グループがプロジェクトにインポートされたかどうかを示す値を取得または設定します。
パブリック プロパティ Item この BuildPropertyGroup 内の BuildProperty オブジェクトを取得または設定します。
パブリック メソッドパブリック メソッド
( プロテクト メソッド も参照)
  名前 説明
パブリック メソッド AddNewProperty オーバーロードされます。 新しい BuildProperty を BuildPropertyGroup に追加します。
パブリック メソッド Clear Condition プロパティ値およびすべての BuildProperty オブジェクトを BuildPropertyGroup から削除します。
パブリック メソッド Clone BuildPropertyGroup の詳細コピーまたは簡易コピーを作成します。
パブリック メソッド Equals  オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 (Object から継承されます。)
パブリック メソッド GetEnumerator BuildPropertyGroup を反復処理する列挙子を取得します。
パブリック メソッド GetHashCode  特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 (Object から継承されます。)
パブリック メソッド GetType  現在のインスタンスの Type を取得します。 (Object から継承されます。)
パブリック メソッド ReferenceEquals  指定した複数の Object インスタンスが同一かどうかを判断します。 (Object から継承されます。)
パブリック メソッド RemoveProperty オーバーロードされます。 指定した BuildProperty を BuildPropertyGroup から削除します。
パブリック メソッド SetProperty オーバーロードされます。 指定した Name を持つ BuildProperty の Value を設定します。
パブリック メソッド ToString  現在の Object を表す String を返します。 (Object から継承されます。)
プロテクト メソッドプロテクト メソッド
参照参照

関連項目

BuildPropertyGroup クラス
Microsoft.Build.BuildEngine 名前空間



英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

「BuildPropertyGroup」の関連用語

BuildPropertyGroupのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



BuildPropertyGroupのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.

©2026 GRAS Group, Inc.RSS