ASP.NET 5的解决方案结构



我们是一个小型开发团队,继承了几年前用ASP.NET 4启动的一个规模可观的ASP.NET MVC项目。我们希望在某个时候迁移到ASP.NET 5。目前,该解决方案有3个项目-数据、服务和Web。数据项目使用实体框架。Web项目以前只是MVC,但现在有一个Web API,我们有几百个RESTful API调用和一个AngularJS前端。

看起来ASP.NET 5的web应用程序默认解决方案使用了一个新的结构,其中web项目包含wwwroot和其他内容。您是否建议拥有多个项目,或者我们应该将数据和服务保留在主项目中?我倾向于单一项目的方法,但我不确定什么是最好的长期结构。谢谢!

一个解决方案,多个项目。重点是分离项目中可重用的组件。事实上,我想在你问题中列出的项目基础上再增加一个项目。模型。

假设您决定将另一个应用程序添加到您的解决方案中。它可能是Xamarin Forms应用程序、WPF应用程序、控制台应用程序、Windows服务,等等。如果模型和数据层都在各自的类库中,则可以重用它们,而无需重复代码。如果您将模型和数据层放在Web API项目中,您将无法在新应用程序中轻松重用它。

唯一一件我不一定(我认为我仍然可以)结合的是Web API应用程序和Angular应用程序。这两个可能是如此复杂,所以把它们放在一个项目中是有意义的。

最新更新