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

BuildItemGroup クラス

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

BuildItem オブジェクトコレクション表します

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

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

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

Module Module1

    ''' <summary>
    ''' This code demonstrates the use of the following methods:
    '''     Engine constructor
    '''     Project constructor
    '''     Project.LoadFromXml
    '''     Project.Xml
    '''     BuildItemGroupCollection.GetEnumerator
    '''     BuildItemGroup.GetEnumerator
    '''     BuildItem.Name (get)
    '''     BuildItem.Include (set)
    '''     BuildItem.GetMetadata
    '''     BuildItem.SetMetadata
    '''     BuildItemGroup.RemoveItem
    '''     BuildItemGroup.AddNewItem
    ''' </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 ItemGroups.
        project.LoadXml( _
            "<Project xmlns='http://schemas.microsoft.com/developer/msbuild/2003'>"
 & _
                "<ItemGroup>" & _
                    "<Compile Include='Program.cs'/>"
 & _
                    "<Compile Include='Class1.cs'/>"
 & _
                    "<RemoveThisItemPlease Include='readme.txt'/>"
 & _
                "</ItemGroup>" & _
                "<ItemGroup>" & _
                    "<EmbeddedResource Include='Strings.resx'>"
 & _
                        "<LogicalName>Strings.resources</LogicalName>"
 & _
                        "<Culture>fr-fr</Culture>"
 & _
                    "</EmbeddedResource>" &
 _
                "</ItemGroup>" & _
            "</Project>" _
            )

        ' Iterate through each ItemGroup in the Project.  There are
 two.
        For Each ig As BuildItemGroup
 In project.ItemGroups

            Dim itemToRemove As BuildItem
            itemToRemove = Nothing

            ' Iterate through each Item in the ItemGroup.
            For Each item As
 BuildItem In ig

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

                ' If the item's name is "EmbeddedResource"
 and it has a metadata Culture
                ' set to "fr-fr", then ...
                If (item.Name = "EmbeddedResource")
 And (item.GetMetadata("Culture")
 = "fr-fr") Then
                    ' Change the item's Include path to "FrenchStrings.fr.resx",
 
                    ' and add a new metadata Visiable="false".
                    item.Include = "FrenchStrings.fr.resx"
                    item.SetMetadata("Visible", "false")
                End If
            Next

            ' Remove the item named "RemoveThisItemPlease"
 from the
            ' ItemGroup
            If Not itemToRemove Is
 Nothing Then
                ig.RemoveItem(itemToRemove)
            End If

            ' For each ItemGroup that we found, add to the end of it
            ' a new item Content with Include="SplashScreen.bmp".
            ig.AddNewItem("Content", "SplashScreen.bmp")
        Next

        ' The project now looks like this:
        '
        '     <?xml version="1.0" encoding="utf-16"?>
        '     <Project xmlns="http:'schemas.microsoft.com/developer/msbuild/2003">
        '       <ItemGroup>
        '         <Compile Include="Program.cs" />
        '         <Compile Include="Class1.cs" />
        '         <Content Include="SplashScreen.bmp" />
        '       </ItemGroup>
        '       <ItemGroup>
        '         <EmbeddedResource Include="FrenchStrings.fr.resx">
        '           <LogicalName>Strings.resources</LogicalName>
        '           <Culture>fr-fr</Culture>
        '           <Visible>false</Visible>
        '         </EmbeddedResource>
        '         <Content Include="SplashScreen.bmp" />
        '       </ItemGroup>
        '     </Project>
        '
        Console.WriteLine(project.Xml)

    End Sub

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

using Microsoft.Build.BuildEngine;

namespace AddNewItem
{
    class Program
    {
        /// <summary>
        /// This code demonstrates the use of the following methods:
        ///     Engine constructor
        ///     Project constructor
        ///     Project.LoadFromXml
        ///     Project.Xml
        ///     BuildItemGroupCollection.GetEnumerator
        ///     BuildItemGroup.GetEnumerator
        ///     BuildItem.Name (get)
        ///     BuildItem.Include (set)
        ///     BuildItem.GetMetadata
        ///     BuildItem.SetMetadata
        ///     BuildItemGroup.RemoveItem
        ///     BuildItemGroup.AddNewItem
        /// </summary>
        /// <param name="args"></param>
        static void Main(string[]
 args)
        {
            // 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 ItemGroups.
            project.LoadXml(@"
                <Project xmlns='http://schemas.microsoft.com/developer/msbuild/2003'>

                    <ItemGroup>
                        <Compile Include='Program.cs'/>
                        <Compile Include='Class1.cs'/>
                        <RemoveThisItemPlease Include='readme.txt'/>
                    </ItemGroup>

                    <ItemGroup>
                        <EmbeddedResource Include='Strings.resx'>
                            <LogicalName>Strings.resources</LogicalName>
                            <Culture>fr-fr</Culture>
                        </EmbeddedResource>
                    </ItemGroup>

                </Project>
                ");

            // Iterate through each ItemGroup in the Project.  There
 are two.
            foreach (BuildItemGroup ig in project.ItemGroups)
            {
                BuildItem itemToRemove = null;

                // Iterate through each Item in the ItemGroup.
                foreach (BuildItem item in
 ig)
                {
                    // If the item's name is "RemoveThisItemPlease",
 then
                    // store a reference to this item in a local variable
,
                    // so we can remove it later.
                    if (item.Name == "RemoveThisItemPlease")
                    {
                        itemToRemove = item;
                    }

                    // If the item's name is "EmbeddedResource"
 and it has a metadata Culture
                    // set to "fr-fr", then ...
                    if ((item.Name == "EmbeddedResource")
 && (item.GetMetadata("Culture") == "fr-fr"))
                    {
                        // Change the item's Include path to "FrenchStrings.fr.resx",
 
                        // and add a new metadata Visiable="false".
                        item.Include = @"FrenchStrings.fr.resx";
                        item.SetMetadata("Visible", "false");
                    }
                }

                // Remove the item named "RemoveThisItemPlease"
 from the
                // ItemGroup
                if (itemToRemove != null)
                {
                    ig.RemoveItem(itemToRemove);
                }

                // For each ItemGroup that we found, add to the end
 of it
                // a new item Content with Include="SplashScreen.bmp".
                ig.AddNewItem("Content", "SplashScreen.bmp");
            }

            // The project now looks like this:
            //
            //     <?xml version="1.0" encoding="utf-16"?>
            //     <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
            //       <ItemGroup>
            //         <Compile Include="Program.cs" />
            //         <Compile Include="Class1.cs" />
            //         <Content Include="SplashScreen.bmp"
 />
            //       </ItemGroup>
            //       <ItemGroup>
            //         <EmbeddedResource Include="FrenchStrings.fr.resx">
            //           <LogicalName>Strings.resources</LogicalName>
            //           <Culture>fr-fr</Culture>
            //           <Visible>false</Visible>
            //         </EmbeddedResource>
            //         <Content Include="SplashScreen.bmp"
 />
            //       </ItemGroup>
            //     </Project>
            //
            Console.WriteLine(project.Xml);
        }
    }
}
継承階層継承階層
System.Object
  Microsoft.Build.BuildEngine.BuildItemGroup
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバ場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
BuildItemGroup メンバ
Microsoft.Build.BuildEngine 名前空間

BuildItemGroup コンストラクタ


BuildItemGroup プロパティ


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

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

関連項目

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

BuildItemGroup メソッド


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

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

関連項目

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

BuildItemGroup メンバ

BuildItem オブジェクトコレクション表します

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


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

関連項目

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



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「BuildItemGroup」の関連用語

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

   

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



BuildItemGroupのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

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

©2025 GRAS Group, Inc.RSS