我正在查看我公司在 .NET 2.0 中开发的 Web 应用程序。 在部署时,他们在“默认网站”下创建了嵌套的 Web 应用程序,如下所示
- 默认网站
- 我的根应用程序
- 子申请 1
- 子申请2
- 子申请 3
- 我的根应用程序
每个应用程序都是一个 .cs 项目。许多子应用程序甚至只有一个 Web 服务(大约 15-20 个 Web 方法),仅此而已。
由于开发这个项目的人不在身边,我想知道 Q1。采取这种方法的原因是什么? IIS 和 .NET 2.0 是否有一些限制使它们具有这种结构。
Q2。如果我想将它们全部合并到一个 Web 应用程序中。值得推荐吗?
Q3。这样的web应用嵌套有什么优缺点呢?何时嵌套网络应用,何时不嵌套?
如果这篇文章出现在堆栈溢出的错误部分,我很抱歉。如果是这样,请指导我将其张贴在正确的部分。
在此先感谢您提供的所有帮助和建议。
最佳答案
这个问题相当广泛,不知道这些子应用程序是什么,它们如何或是否相互通信等等。但将事物分开通常是一个好习惯。在您的特定情况下:当您在多台机器上运行子应用程序时,可以更好地扩展它们。你得到更好的维护,就好像你必须修复一些东西,然后你处理你的大应用程序的一些离散部分。该架构应该好得多,因为当可以将应用程序拆分为多个子应用程序时,这意味着它们松散耦合。
在我们的 Web 应用程序中,我们通常有 3 个 Web 项目:API、Web、CMS。我在这里不计算其他业务逻辑层、DAL 等。所以现在,我们可以像您一样将它们作为单独的实例运行,但我们也可以将它们作为一个应用程序运行,我们必须只指定路由:API myapp.example/api/**
,CMS:myapp.example/cms/**
和 Web:myapp.example/**
。
关于c# - 嵌套网络应用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35935517/