【问题标题】:Solution structure for ASP.NET 5ASP.NET 5 的解决方案结构
【发布时间】:2015-06-08 18:41:35
【问题描述】:

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

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

【问题讨论】:

  • 你在征求我们的意见,这在 Stack Overflow 是不允许的。您熟悉您的项目,应该能够在坐下来权衡利弊的基础上得出结论。
  • 抱歉,我对 ASP.NET 还比较陌生,所以我向更有经验的人寻求帮助。我已经阅读了与 AngularJS、Spring 等结构化项目相关的多个其他 stackoverflow 问题/答案,发现它们非常有帮助,所以我认为它是合适的/允许的。
  • 我要撤回我的近距离投票,看来基于意见的规则已经改变(或者至少我对它们的记忆不同)。 Here they are 供您参考。在我看来,这属于建设性的主观问题,因此是允许的。

标签: asp.net angularjs asp.net-web-api projects-and-solutions asp.net-core


【解决方案1】:

一个解决方案,多个项目。关键是要分离项目的可重用组件。实际上,我会在您在问题中列出的项目中再添加一个项目。模型。

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

唯一我不一定(认为我仍然可能)结合的东西是 Web API 应用程序和 Angular 应用程序。这两个可能非常复杂,因此将它们放在一个项目中是有意义的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-10-16
    • 1970-01-01
    • 2013-05-03
    • 2015-04-06
    • 2019-03-06
    • 1970-01-01
    • 1970-01-01
    • 2015-05-06
    相关资源
    最近更新 更多