Output 要素 (MSBuild)

タスクの出力値をアイテムとプロパティに格納します。

<Project><Target><Task><Output>

構文

<Output TaskParameter="Parameter"
    PropertyName="PropertyName"
    Condition = "'String A' == 'String B'" />

属性と要素

以降のセクションでは、属性、子要素、および親要素について説明します。

属性

属性 説明
TaskParameter 必須の属性です。

タスクの出力パラメーターの名前です。
PropertyName PropertyName 属性と ItemName 属性のどちらかが必要です。

タスクの出力パラメーターの値を受け取るプロパティです。 プロジェクトは、$(<PropertyName>) 構文でプロパティを参照できます。 このプロパティ名は、新しいプロパティ名でも、プロジェクトで既に定義されている名前でもかまいません。

ItemName が使われている場合、この属性を使うことはできません。
ItemName PropertyName 属性と ItemName 属性のどちらかが必要です。

タスクの出力パラメーターの値を受け取るアイテムです。 プロジェクトは、@(<ItemName>) 構文でアイテムを参照できます。 アイテム名は、新しいアイテム名でも、プロジェクトで既に定義されている名前でもかまいません。 項目の名前が既存の項目の場合、出力パラメーターの値は既存の項目に追加されます。

PropertyName が使われている場合、この属性を使うことはできません。
Condition 省略可能な属性です。

評価する条件です。 詳細については、「条件」を参照してください。

子要素

なし。

親要素

要素 説明
タスク MSBuild タスクのインスタンスを作成して、実行します。

次のコード例では、Target タスクが Csc 要素の内部で実行されています。 タスクのパラメーターに渡されるアイテムとプロパティは、この例のスコープ外で宣言されています。 出力パラメーター OutputAssembly からの値は FinalAssemblyName アイテムに格納され、出力パラメーター BuildSucceeded からの値は BuildWorked プロパティに格納されます。 詳細については、タスクに関する記事を参照してください。

<Target Name="Compile" DependsOnTargets="Resources">
    <Csc  Sources="@(CSFile)"
            TargetType="library"
            Resources="@(CompiledResources)"
            EmitDebugInformation="$(includeDebugInformation)"
            References="@(Reference)"
            DebugType="$(debuggingType)"
            OutputAssembly="$(builtdir)\$(MSBuildProjectName).dll" >
        <Output TaskParameter="OutputAssembly"
                  ItemName="FinalAssemblyName" />
        <Output TaskParameter="BuildSucceeded"
                  PropertyName="BuildWorked" />
    </Csc>
</Target>

関連項目