C# 在Visual Studio 2013中的应用程序中运行应用程序?

C# 在Visual Studio 2013中的应用程序中运行应用程序?,c#,asp.net,visual-studio-2013,C#,Asp.net,Visual Studio 2013,我在Visual Studio 2013中有一个主要项目,一个大型网站。这是一个我们正在逐步迁移到.NET的站点。主项目由几个部分组成,并有自己的web.config。例如,假设该站点是www.example.com 在www.example.com下,我们有过多的子文件夹。其中一些子文件夹我只是运行根应用程序和根web.config,因此不需要单独的应用程序,但我现在开始遇到一些文件夹,它们曾经是独立的.NET应用程序,在IIS中有自己的web.config文件和自己的应用程序实例。假设应用程

我在Visual Studio 2013中有一个主要项目,一个大型网站。这是一个我们正在逐步迁移到.NET的站点。主项目由几个部分组成,并有自己的web.config。例如,假设该站点是www.example.com

在www.example.com下,我们有过多的子文件夹。其中一些子文件夹我只是运行根应用程序和根web.config,因此不需要单独的应用程序,但我现在开始遇到一些文件夹,它们曾经是独立的.NET应用程序,在IIS中有自己的web.config文件和自己的应用程序实例。假设应用程序子文件夹之一是www.example.com/app1/。但是,当我将/app1/移动到我的项目中时,母版页和占位符引用不同步,这是因为在文件结构定义中使用了“~/”,并且仅仅因为这些文件夹曾经是单独的应用程序


我的问题是,是否可以在主应用程序中构建和部署这些子文件夹作为它们自己的应用程序,同时维护它们的“~/”.NET链接结构?此外,如果可能的话,在一个主应用程序项目中维护多个应用程序是一种好的做法吗?我想我不是唯一一个需要或要求这种东西的人。或者我应该将这些子文件夹作为单个项目添加到主项目中,并按照依赖关系顺序构建它们吗

在您的情况下,为了保持整洁,我将提供一个包含多个web项目的解决方案,每个web项目对应于IIS中的每个web应用程序。请记住,因为您在服务器中配置了文件夹,所以您不需要在开发环境中使用相同的环境。因此,您可以在VS解决方案中使用以下结构:

\My Solution
-- \ Web App 1 (Root)
-- \ Web App 2 (Subfolder 1 in Root)
-- \ Web App 3 (Subfolder 2 in Root)
-- \ Web App 4 (Subfolder 3 in Root)

您只需在将每个web应用部署到服务器中的正确文件夹时小心。必须在IIS中为特定的web.config文件配置为应用程序的文件夹。

那么这被认为是最佳做法吗?我们的DEV测试PRD环境都是匹配的,所以虽然我不一定需要有一个类似的环境,但如果我能正确地理解你的话,有时会更有意义。我不认为它是一个最佳实践,因为在应用程序里面应用程序对我来说不是一个好的实践,因为我不认为它是一个正常的方法。但既然你是这样的,我建议你如何应对,让你的生活更轻松。另一个解决方案可能是“合并”所有web.config文件,修复正确文件夹的“~\”,并在应用程序中结束应用程序。但是请注意,您可以在应用程序/站点中有一个应用程序文件夹,而在文件系统中,它实际上不在主/根文件夹中。您可以(我认为在本例中您应该)拆分应用程序和子应用程序的逻辑,因为最重要的是,它们都是独立的应用程序。如果不是,为什么要这样配置?