我为Visual Studio 2010创建了一个项目模板,我在我使用的每台机器上都设置了一个环境变量。模板引用一些位于该环境变量中指向的目录中的资源。 模板中的示例参考是:
<ItemGroup>
<Compile Include="$(MyVariable)OneDir\MyFile.txt">
关键是当我用这个模板创建一个proyect时,在.csproj中我得到:
<ItemGroup>
<Compile Include="..\..\..\..\Users\MyUser\AppData\......."/>
在同一个.csproj中我将.csproj文件替换为whit:
<ItemGroup>
<Compile Include="$(MyVariable)OneDir\MyFile.txt">
那么,有没有办法让csproj在“Include”参数中写入“$(MyVariable”)? 我尝试使用scape caracter%24对应于“$”字符,就像它在msdn [1]中说的那样:http://msdn.microsoft.com/en-us/library/bb383819.aspx但是我得到了这个.csproj:
<ItemGroup>
<Compile Include="%24..\..\..\..\Users\MyUser\AppData\......."/>