views:

51

answers:

0

How do I define a Visual Studio project template such that the include attribute references a non-existent file? That is, the file will exist once the resulting csproj is in place. But the file does not exist within the vs template zip.

I have this:

<ProjectItem ReplaceParameters="True" TargetFileName="..\GlobalVersionInfo.cs">
    <Link>Properties\GlobalVersionInfo.cs</Link>
</ProjectItem>

But once invoked the '..' of the '..\GlobalVersionInfo.cs' is replaced with the full path to the temp directory (probably because that's where the zip is unpacked at).

I want to end up with something like this in my final csproj file:

<Compile Include="..\GlobalVersionInfo.cs">
    <Link>Properties\GlobalVersionInfo.cs"</Link>
</Compile>

I guess another way of asking this is "How do I get my TargetFileName to be treated as a literal, instead of having it's path turned into an absolute path?"