在C#Web API项目中运行用TypeScript编写的Angular前端?

时间:2018-03-19 15:21:53

标签: c# angular typescript visual-studio-2017

假设我有一个现有的ASP.NET Web API项目,其中包含我需要的所有API控制器。以前使用此API时,客户端只是使用其典型的URI路由来使用此API。

现在,使用ASP.NET Web API,它们提供了一个简单的前端。我想在此添加AngularJS,我看到了一个明显的方法,通过Angular的JavaScript库。如何用TypeScript做到这一点?我理解TypeScript是一种可以编译成JavaScript的语言,对我来说这意味着我需要在Visual Studio(而不是Visual Studio Code)的构建过程中为我的前端构建TypeScript。

如何做到这一点?我已经完成了一些tutorials for TypeScript,他们让你从NPM中取出一些东西,为你的网站奠定基础,然后你从那里开始。但是,在所有这些教程中,我已经在Visual Studio Code中完成了这项工作,您可以使用Angular CLI,ng serve --open运行Web服务器并开发您的网站,但我不知道如何将此功能转换为Visual Studio 2017,其中Web API和Angular前端都同时运行。

我设想我在IIS上运行的产品,当客户端导航到页面时,他们会在Angular前端提供服务,而Web API将在后端存在是的,但我不知道如何将这两者结合在一起。您是否需要运行两个Web服务器,一个用于Web API,另一个用于前端?如果您可以在单个Web服务器上执行此操作,该怎么办?感谢。

1 个答案:

答案 0 :(得分:1)

如果你有一个正常工作的API,你可以正常运行,比如localhost:8000。

现在您创建SPA(角度或其他)并在localhost:8001上运行它。

他们独立运行,你所做的只是查询你的终端,显然是通过参数(比如localhost:8000 / api / something / 3)来检索你正在寻找的数据。

如果API不公开,您只是不公开它。