ASP.NET重构思路:TypeScript

时间:2014-11-20 13:07:51

标签: javascript c# asp.net refactoring typescript

现在我们在.aspx页面中使用服务器端代码块来生成客户端脚本使用的JavaScript变量;

Page.aspx

<html>
   <head>
      <script type="text/javascript">
          <%=GenerateJavascriptVars()%>
          // session variables, database values, etc.
          // use the variables
      </script>
   </head>
   <body>
      <form></form>
   </body>
</html>

这很好,但是我正在研究TypeScript,并且似乎不是一个模仿这个设置的好方法,因为TypeScript需要在编译时知道这些变量的类型(这样就可以生成JavaScript文件了)。我知道.d.ts文件,但似乎在两个地方定义东西没有任何好处,那时为什么不只是使用原生JavaScript?

我想我要问的是,TypeScript是否适用于我们当前的设置?我开始认为重构可能超过强类型JavaScript的好处。我有什么遗失的东西吗?

1 个答案:

答案 0 :(得分:1)

  

我想我要问的是,TypeScript是否适用于我们当前的设置?我开始认为重构可能超过强类型JavaScript的好处。我有什么遗失的东西吗?

有好处。如您所知,.d.ts文件非常简单:

declare var sessionVarOne{}
declare var sessionVarTwo{}

但更值得推荐的少重复工作方法是使用codegen为您生成这些内容,例如:假设您将导出一个C#变量AwesomeDTO Something,您将编码:

interface AwesomeDTO{
   awesomeDTOMember : string;
}

declare var Something:AwesomeDTO;

对于codegen,请查看http://type.litesolutions.net/之类的内容(我们有自己的高度自定义解决方案,例如也可以生成Angular HTTP服务)。