将TypeScript与内联服务器端`<script>`块和ASP.Net一起使用

Kei*_*ith 15 c# asp.net server-side typescript

我希望能够在ASPX(或Razor)页面中使用内联TypeScript,该页面在页面编译时转换为Javascript.

所以:

<script type="text/typescript" runat="server">
    ...
</script>
Run Code Online (Sandbox Code Playgroud)

成为...

<script type="text/javascript">
    ...
</script>
Run Code Online (Sandbox Code Playgroud)

它应该发生在@<% %>转换块的同一点上.

这应该可以在运行时使用某种页面后处理,但是在编译时不会产生异常 - 我想在脚本中找到与任何C#代码同时出现的错误.

理想情况下,TypeScript intellisense等应该<script>在内联块中工作,这使我认为这应该是VS2012扩展.

有没有办法做到这一点?

Fen*_*ton 6

最简洁的答案是不.

您可以编写一个TypeScript文件并粘贴已编译的JavaScript,但这样就可以了.一个实际问题是,如果编译器将您的TypeScript转换为JavaScript,您将丢失TypeScript代码.这就是您拥有TypeScript文件和JavaScript文件的原因.

将脚本内联而不是引用外部脚本的令人信服的理由是 - 您的问题可能有另一种解决方案,不需要内联脚本吗?

  • 为什么?我不会丢失`&lt;%%&gt;`或`@ {}`块的内容。我使用内联块的原因太长了,这里的话题有些偏离。 (2认同)
  • @基思我不是说Visual Studio不这样做。我是说什么也没做。不是Visual Studio,不是Web Essentials,不是替代插件。没有什么可以做的。如果您编写了一个插件-这将是第一个! (2认同)