ファイルからオプションを読み取ってappSettings.config
、CSPROJ に条件付きセクションを作成したいと考えています。Visual Studio 2010 の条件付き参照の助けを借りて条件付き参照を行う方法は知っていますが、その中から appSettings ファイルにアクセスする方法がわかりません。
これは可能ですか?もしそうなら、誰かが何らかのガイダンスを提供してくれませんか?
EDIT @paloの答えに続いて、私は今持っています:
<Target Name="BeforeBuild">
<XmlPeek XmlInputPath="SiteSettings.config" Query="appSettings/add[@key='cProjectNumber']/@value">
<Output TaskParameter="Result" ItemName="value" />
</XmlPeek>
<Message Text="TESTING: @(value)" Importance="high" />
</Target>
これはうまく機能し、プロジェクト番号、つまりTesting: 012
. さて、いくつかのコンパイルインクルードでそれを使用するにはどうすればよいですか? 私が試してみました:
<ItemGroup>
<Compile Include="Accounts\@(value)\Controls\MyControl.ascx.cs">
<SubType>ASPXCodeBehind</SubType>
</Compile>
</ItemGroup>
しかし、次のようなエラーが表示されます。
"Accounts\@(value)\Controls\MyControl.ascx.cs" という式は、このコンテキストでは使用できません。アイテム リストは、アイテム リストが期待される他の文字列と連結できません。複数の項目リストを区切るには、セミコロンを使用します。