【问题标题】:Why is the Typescript settings tab missing in my VS 2013 ASP.NET project properties?为什么我的 VS 2013 ASP.NET 项目属性中缺少 Typescript 设置选项卡?
【发布时间】:2019-07-03 04:49:45
【问题描述】:

我正在尝试将一些 javascript 文件迁移到旧版 ASP.NET MVC 5 项目中的 Typescript。我 我已经创建了一个 Typescript 文件,并且从 TS 到 JS 的编译按预期工作,但是我的旧项目属性中没有“Typescript Build”选项卡。

我在处理一个新的 ASP.NET MVC 5 项目时没有遇到这个问题。如何在我的遗留项目中解决这个问题?我正在使用 Visual Studio 2013 Update 1。

谢谢,

阿德里安

【问题讨论】:

  • 大胆猜测:用文本查看器查看项目文件,记事本没问题。比较您看到正在使用的 <ProjectTypeGuids> 值。
  • @Hans:猜得好!我是属于 ASP.NET MVC 的 ProjectGuid。非常感谢!

标签: visual-studio visual-studio-2013 typescript


【解决方案1】:

我需要将以下行添加到 csproj 以导入打字稿目标:

<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets" Condition="Exists('$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets')" />

然后我可以在项目设置中看到 typescript 构建选项。

【讨论】:

  • 先生,您救了我的命,谢谢!
  • 对我有用,尽管我不得不将 MSBuildExtensionsPath32 更改为 MSBuildExtensionsPath
【解决方案2】:

正如 Hans Passant 在 cmets 中正确提示的那样,问题出在我的 .csproj 文件中的以下 ProjectGuid:{349c5851-65df-11da-9384-00065b846f21}

从项目文件中删除 GUID 并重新加载项目后,Typescript 选项卡会显示在项目属性中。

【讨论】:

  • 我最初一定跳过了对我有用的“重新加载我的项目”部分。我使用的是 VS2013.3,一旦您将 TypeScript 文件添加到解决方案中,它就会通知您添加了 TS 支持。重新加载项目/解决方案然后打开构建选项卡。
  • Hmm.. 这帮助我获得了 TypeScript 项目选项卡,但现在该项目的行为类似于类库,因为删除的 GUID 用于 ASP.NET MVC5 (codeproject.com/Reference/720512/…)
  • 这种工作,但正如富野指出的那样,它会在此过程中删除网络内容。我刚刚重新添加了 guid,网络内容又回来了。
【解决方案3】:

我在 csproj 中添加了“TypeScriptToolsVersion”。

  <Project>
    <PropertyGroup>
      ...
      <TypeScriptToolsVersion>1.0</TypeScriptToolsVersion>
    </PropertyGroup>
  </Project>

但它是 Visual Studio 2013 RC2。

【讨论】:

  • 我不认为这是正确的解决方案,因为我创建的测试项目也没有这个配置部分。
【解决方案4】:

另一个可能的原因是 .csproj 文件的 VisualStudioVersion 节点中有旧的 Visual Studio 版本号:

对于 VS 2013,它应该是:

<VisualStudioVersion>12.0</VisualStudioVersion>

对于 VS 2015,它应该是:

<VisualStudioVersion>14.0</VisualStudioVersion>

对于 VS 2017,它应该是:

<VisualStudioVersion>15.0</VisualStudioVersion>

【讨论】:

    【解决方案5】:

    如果你的 csproj 有

    Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersi>on)\TypeScript\Microsoft.TypeScript.targets" >Condition="Exists('$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$( VisualS>tudioVersion)\TypeScript\Microsoft.TypeScript.targets')" />

    你还是有问题。

    做以下事情:

    1. 在项目中添加一个新的打字稿文件。
    2. 构建解决方案。
    3. 关闭并启动 Visual Studio,打开项目。
    4. 检查项目属性中的 Typescript 选项卡。

    【讨论】:

    • 您的答案感觉不完整。您是否遗漏了一些细节?
    • 谢谢。我添加了缺失的部分
    【解决方案6】:

    我不确定 2013 年的情况,但对于 VS2015,您只需在项目的根文件夹中添加一个 TypeScript 文件,它会弹出一个对话框,询问您是否要为 TypeScript 配置项目。简单!

    【讨论】:

      【解决方案7】:

      为确保您在 Visual Studio 项目文件中获得正确的设置:

      1. 通过 Visual Studio 将 temp.ts 文件添加到您的项目并保存(您可能会收到有关 Visual Studio 查找 TypeScript 类型的对话框)

      2. 您的项目文件应该已经更新。保存它。

      3. 关闭解决方案并重新打开。

      4. TypeScript Build Tab 应该在项目属性中。

      5. 删除 temp.ts 文件。

      (我从 Eric D. Johnson 的评论中得出):

      https://developercommunity.visualstudio.com/content/problem/98916/typescript-build-tab-not-showing-in-project-proper.html

      【讨论】:

        猜你喜欢
        • 2021-06-04
        • 1970-01-01
        • 1970-01-01
        • 2018-04-27
        • 2010-09-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多