0

MSBuild.ExtensionPack.Web.Iis7AppPoolGetInfo タスク アクションでタスクを使用しようとしています。このタスクの出力パラメーターは SiteInfo プロパティであり、その型は ITaskItem です。これはプロパティであり、コレクションではありません。

SiteInfo メタデータにアクセスするにはどうすればよいですか? $ でアクセスできますが、取得できるのは Web サイト名だけです。%(SiteInfo.) を使用しようとしましたが、成功しませんでした。

4

1 に答える 1

4

出力パラメーターが ITaskItem で、メタデータにアクセスする場合は、それをプロパティではなく ItemGroup に割り当てる必要があります。

 <Target Name="Test">

    <MSBuild.ExtensionPack.Web.Iis7AppPool
      TaskAction="GetInfo"
      Name="DefaultAppPool">

      <Output TaskParameter="AppPoolInfo" ItemName="PoolInfo"  />
    </MSBuild.ExtensionPack.Web.Iis7AppPool>

    <Message Text="AppPool info = [@(PoolInfo)]" />
    <Message Text="AppPool MaxProcesses = [%(PoolInfo.MaxProcesses)]" />

    <MSBuild.ExtensionPack.Web.Iis7WebSite
      TaskAction="GetInfo"
      Name="Default Web Site">

      <Output TaskParameter="SiteId" PropertyName="WebId"  />
      <Output TaskParameter="SiteInfo" ItemName="WebInfo"  />
    </MSBuild.ExtensionPack.Web.Iis7WebSite>

    <Message Text="WebSite id = [$(WebId)]" />
    <Message Text="WebSite app pool = [%(WebInfo.ApplicationPoolName)]" />

  </Target>
于 2011-01-25T16:55:03.263 に答える