我尝试将一些javascript文件迁移到旧版ASP.NET MVC 5项目中的Typescript。一世 我已经创建了一个Typescript文件,从TS到JS的编译按预期工作,但我没有" Typescript Build"选中我遗留项目的属性。
在处理新的ASP.NET MVC 5项目时,我没有遇到此问题。我如何在遗留项目中解决这个问题?我正在使用Visual Studio 2013 Update 1。
谢谢,
阿德里安
答案 0 :(得分:27)
我需要将以下行添加到csproj以导入typescript目标:
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets" Condition="Exists('$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets')" />
然后我可以在项目设置中看到typescript构建选项。
答案 1 :(得分:6)
正如Hans Passant在评论中正确暗示的那样,问题是我的.csproj文件中的以下ProjectGuid:{349c5851-65df-11da-9384-00065b846f21}
从项目文件中删除了GUID并重新加载了项目后,Typescript选项卡显示在项目属性中。
答案 2 :(得分:3)
我在csproj中添加了“TypeScriptToolsVersion”。
<Project>
<PropertyGroup>
...
<TypeScriptToolsVersion>1.0</TypeScriptToolsVersion>
</PropertyGroup>
</Project>
但它是Visual Studio 2013 RC2。
答案 3 :(得分:2)
另一个可能的原因是在.csproj文件的VisualStudioVersion
节点中有一个旧的Visual Studio版本号:
对于VS 2013,它应该是:
<VisualStudioVersion>12.0</VisualStudioVersion>
对于VS 2015,它应该是:
<VisualStudioVersion>14.0</VisualStudioVersion>
VS 2017应该是:
<VisualStudioVersion>15.0</VisualStudioVersion>
答案 4 :(得分:0)
我不确定2013年,但对于VS2015,您只需要将TypeScript文件添加到项目的根文件夹中,它将弹出一个对话框,询问您是否要为TypeScript配置项目。简单!
答案 5 :(得分:0)
确保在Visual Studio项目文件中获得正确的设置:
通过Visual Studio将temp.ts文件添加到项目中并保存(您可以获得有关Visual Studio查找TypeScript类型的对话)
您的项目文件应该已更新。保存它。
关闭解决方案并重新打开。
TypeScript构建选项卡应位于项目属性中。
删除temp.ts文件。
(我从Eric D. Johnson的评论中得出这个):
答案 6 :(得分:0)
如果您的csproj有
仍然有问题。
执行以下操作: