I wonder if there\'s a way to set specific TypeScript compiler version for project in Visual Studio. So I could configure a project to always use version 1.0, even if new ve
I have solved it by adding $(TypeScriptToolsVersion)\
after TypeScript\
in the condition statement.
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets"
Condition="Exists('$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\$(TypeScriptToolsVersion)\Microsoft.TypeScript.targets')" />
We can exclude type script file compilation in visual studio using below line in csproj file.
<TypeScriptCompileBlocked>true</TypeScriptCompileBlocked>
after <TypeScriptToolsVersion>0.9</TypeScriptToolsVersion>
this line.
If you try to compile a project with <TypeScriptToolsVersion>0.9</TypeScriptToolsVersion>
using TypeScript version 1.0 you'll get the following error:
Your project file uses a different version of the TypeScript compiler and tools than is currently installed on this machine. No compiler was found at C:\Program Files (x86)\Microsoft SDKs\TypeScript\0.9\tsc.exe. You may be able to fix this problem by changing the element in your project file.
So it's preventing you from compiling with newer version. It does not however put the compiler into some 0.9 compatibility mode.
But if you have TypeScript 0.9 installed, it will compile against that version. So yes, you can force a specific version of the TypeScript compiler using the attribute.
Basically what the <TypeScriptToolsVersion>
do is that it changes the path to the compiler:
C:\Program Files (x86)\Microsoft SDKs\TypeScript\<TypeScriptToolsVersion>\tsc.exe
Visual Studio Version -> VS2013
<PropertyGroup> ...... <IISExpressUseClassicPipelineMode /> <TypeScriptToolsVersion>1.8</TypeScriptToolsVersion> </PropertyGroup>