AngularJS SPA与ASP.NET Web API后端

时间:2014-08-15 03:38:51

标签: asp.net-mvc angularjs asp.net-web-api

我是AngularJS的新手,需要一些关于如何使用Web API为内部订单输入系统构建SPA的建议(SEO不是问题)。我想以干净,结构良好的方式进行设置,以实现高效的开发,调试和扩展。部署。

以下是我打算做的事情:

  • 不使用MVC / razor视图(将所有路由和渲染保留为Angular)
  • 创建两个独立的Visual Studio(2013)解决方案:一个用于AngularJS SPA部分,另一个用于Web API部分(用于向SPA提供所有数据)。

作为替代方案,我想我可以为整个站点(SPA和WebAPI)使用一个Visual Studio解决方案,然后使用razor来提供html文件(或弄清楚如何禁用默认的MVC管道并直接提供HTML相反,要避免MVC开销)。另外,我是否必须将SPA和WebAPI放在同一个项目中才能轻松地使用Visual Studio进行调试?

或许还有更好的方法?

关于最佳做法/良好方法的建议将不胜感激。

1 个答案:

答案 0 :(得分:5)

我们在同一个解决方案下创建了两个不同的项目,第一个是空Web应用程序,下一个是类库。

1)Web应用程序项目由角度JS和其他客户端组件组成。

2)类库由Web api控制器和相关组件组成,如过滤器和其他细节。

我们在类库项目中有一个bootstrap类,它为我们引导webapi和容器。它也很容易测试Web api

   public class Bootstrap
   {
        public void ConfigureRoute(HttpConfiguration httpConfiguration)
        {
        }

        public BootStrapApplication ConfigureContainer()
        {
        }
   }

从app_start中的global.asax我们调用BootStrap应用程序类和方法。

对于angularjs上的应用程序结构,我发现John papa guide效率https://github.com/johnpapa/angularjs-styleguide

希望这有帮助