如何从多个项目创建 ASP.NET 应用程序以进行组开发(转贴)

来源:互联网 发布:js new york北京分店 编辑:程序博客网 时间:2024/06/06 00:49

概要

本文介绍如何将多个 ASP.NET 项目加入到同一个 Web 应用程序中。

您可能会发现,将大型 Web 应用程序项目分为多个项目以便在 Microsoft Visual Studio .NET 中进行 ASP.NET Web 应用程序的组开发是很有用的。Microsoft 建议您在所有方案中使用源代码管理软件,如 Microsoft Visual SourceSafe。

开发大型网站经常会涉及多个开发人员。这些开发人员必须能够在互不干扰的情况下开发 Web 应用程序的特定部分,同时仍能够在项目过程中与他人相互协作。为此,您可以在 Visual Studio .NET 解决方案中使用单个项目。为了使开发更为简单,还可以通过将开发项目分为多个单元来将一个 Web 应用程序分为多个项目。

您可以在单项目或多项目 Visual Studio .NET 解决方案中开发 Web 应用程序。后面的各节概述了每种方法的优缺点。

回到顶端 回到顶端

要求

下面的列表概述了推荐使用的硬件、软件、网络基础结构以及所需的 Service Pack: • Microsoft Windows 2000 Professional、Microsoft Windows 2000 Server、Microsoft Windows 2000 Advanced Server 或 Microsoft Windows XP Professional • Microsoft Internet 信息服务 (IIS) • Microsoft .NET Framework • Microsoft Visual Studio .NET 本文假定您熟悉以下主题: • 创建 Visual Studio .NET Web 应用程序
回到顶端 回到顶端

单项目方法

Microsoft 建议对中小型 Web 应用程序使用单项目方法。Visual Studio .NET 直接支持此方法。整个 Web 应用程序生成为单个 ASP.NET Web 应用程序项目。每个组成员将整个项目的副本下载到开发计算机中,此成员在该计算机中开发自己负责的应用程序部分。应使用源代码管理软件来协调组成员在组成项目的文件上的工作。

单项目方法的优点如下: • 此方法易于实现。您在 Visual Studio .NET 中创建单个 Web 应用程序项目,然后向其添加应用程序项。 • 对于较小的 Web 应用程序,单个 Visual Studio .NET 项目易于管理。 • Visual Studio .NET 直接支持此方法。此方法无需执行特殊步骤即可工作。 • 由于整个项目生成到单一程序集中,您无需在多个程序集之间进行引用。 单项目方法的缺点如下: • 大型 Web 应用程序难于作为单一单元来管理。 • 每次要生成您的工作时,即使很小的代码改动,也必须生成整个项目。对于大型项目,这会很浪费时间并降低开发效率。
回到顶端 回到顶端

多项目方法

如果您将 Web 应用程序分为多个 Visual Studio .NET 项目,会发现管理大型 Web 应用程序的开发更加容易。可以将一个大型开发项目分成可以分别管理和生成的多个较小项目。您的组可以通过处理单独的项目来处理单独的 Web 应用程序部分。您应仍使用源代码管理软件协调在项目文件上的工作。

Visual Studio .NET 不直接支持此方法,因为 Visual Studio .NET Web 项目始终是使用它们自己的程序集在它们自己的 IIS 应用程序根目录中创建的。IIS Web 应用程序无法跨多个 IIS 应用程序根目录。

另外,在 Visual Studio .NET 中,无法从一个根目录使用其他根目录中的资源。如果这些应用程序无法共享资源,从多个项目创建单一应用程序会很困难。

要解决这些问题,您可以使用将多个 Visual Studio .NET 项目加入到同一个 Web 应用程序中 一节中的过程,以使多个 Visual Studio 项目共享同一个 IIS 应用程序根目录。

多项目方法的优点如下: • 管理大型 Web 应用程序的较小单元更为简单。 • 可以从其他项目单独生成每个项目,从而缩短了开发过程中的生成时间。 • 您可以将一个大型 Web 应用程序分成多个逻辑单元,并让这些单元共享公用资源,例如控件。 多项目方法的缺点如下: • Visual Studio .NET 不直接支持此方法。必须执行其他步骤,才能将单独的 Visual Studio .NET 项目加入到同一个 Web 应用程序中。 • 互相访问资源的程序集必须设置相互之间的引用。Visual Studio .NET 不允许循环引用。 • 此方法不适用于小型 Web 应用程序。对于小型 Web 应用程序,管理多个项目比管理单个项目更复杂。
回到顶端 回到顶端

将多个 Visual Studio .NET 项目加入到同一个 Web 应用程序中

要将多个 Visual Studio .NET 项目加入到同一个 Web 应用程序中,这些项目必须共享相同的 IIS 应用程序根目录。Visual Studio .NET 在 Web 项目自己的应用程序根目录中创建 Web 项目。因此,必须单独对此进行配置。

要将多个 Visual Studio .NET 项目加入到同一个 Web 应用程序中,必须完成四个主要步骤: 1. 在整个应用程序的根目录中创建主项目。 2. 在同一 Visual Studio .NET 解决方案中的根目录的子目录中创建子项目。 3. 删除 Visual Studio .NET 通过 IIS 为子项目创建的 Web 应用程序。

注意:由于 Visual Studio .NET 不允许在同一物理目录中创建或使用多个 Web 应用程序,您必须在单独的目录中创建组成您的应用程序的各个项目。 4. 要将这些项目部署到各个开发计算机上,请将应用程序目录结构复制到这些计算机上,然后为主项目目录创建一个 IIS 应用程序根目录。

创建 IIS 应用程序根项目

要为 Web 应用程序创建 IIS 应用程序根项目,请按照下列步骤操作: 1. 启动 Visual Studio .NET。 2. 在文件菜单上,指向新建,然后单击项目。 3. 在新建项目对话框中,单击要在项目类型下使用的语言,然后单击模板下的 ASP.NET Web 应用程序。 4. 在位置文本框中,用 MainWeb 替换 WebApplication# 默认名称。如果您是在使用本地服务器,可以将服务器名保留为 http://localhost位置框的显示应如下所示:
http://localhost/MainWeb

创建子项目

若要创建子项目,请按照下列步骤操作: 1. 对于每个子项目,右键单击“解决方案资源管理器”窗口中的解决方案,指向添加,然后单击新建项目。 2. 在添加新项目对话框中,单击模板下的 ASP.NET Web 应用程序。 3. 在位置文本框中,键入 http://localhost/MainWeb/<subwebname>。这将在根应用程序目录的子目录中创建名为 <subwebname> 的子项目。 4. 单击确定。 5. 从项目中删除非应用程序根目录不需要的所有文件。特别是,删除 Global.asax 和 Web.config 文件。此子项目将依赖主项目的 Global.asax 和 Web.config 文件。 6. 如果子项目只包含共享资源(如用户控件),请删除 WebForm1.aspx 文件。 7. 生成解决方案。

删除与子项目对应的 IIS 应用程序

要删除与子项目对应的 IIS 应用程序,请按照下列步骤操作: 1. 单击开始,指向程序(在 Windows XP 中为所有程序),指向管理工具,然后单击 Internet 服务管理器。 2. 找到您的主 Web 应用程序和要删除的子 Web 项目。 3. 对于每个子项目,右键单击 Web 应用程序结点,然后单击属性。 4. 在目录选项卡上,单击删除,然后单击确定

重要说明不要 单击删除。这将永久删除对应的文件目录和您的项目文件。 配置子项目以共享公用 IIS 应用程序根目录后,您就可以在解决方案中的各个项目之间共享资源了。例如,您可以从共享资源项目中将用户控件拖到另一个项目中的 .aspx 文件中。请注意,您只能在配置项目以共享公用 IIS 应用程序根之后才能执行此操作。如果项目仍在单独的 IIS 应用程序根目录中,Visual Studio .NET 不允许您共享资源。

设置对子项目的引用

要为所有子项目添加对主 Web 应用程序的引用,请按照下列步骤操作。 1. 在主 Web 应用程序的“解决方案资源管理器”中,右键单击引用,然后单击添加引用。 2. 在添加引用对话框中,单击项目选项卡。 3. 选择子项目,然后单击确定。 设置对子项目的引用后,当您生成解决方案时,子项目程序集将复制到主应用程序的“Bin”目录中。然后,您可以调试并使用在子项目中定义的组件。

将多项目应用程序部署到开发计算机

要将多项目 Web 应用程序部署到开发计算机,必须复制表示 Web 应用程序和您要处理的所有子应用程序的根的主(根)项目。您必须使主项目目录作为 IIS Web 应用程序的根目录。

部署有很多选项,但本文将不对每个选项进行说明。例如,您可以部署大型 Web 应用程序中某些源文件的生成版本以避免产生很多源文件。任何对本地项目的引用必须为项目引用。如果要从其他项目中将 ASP.NET 用户控件拖动到 Web 窗体上,您的计算机和解决方案中必须存在包含该用户控件的项目。

对于较小的 ASP.NET Web 应用程序,您可以合并所有的项目。执行此操作的一个好方法是单击 Visual Studio .NET 中的项目菜单上的复制项目。也可以将项目文件复制到计算机。

要将多项目 Web 应用程序部署到开发计算机上,请按照下列步骤操作: 1. 将您在前面的步骤中创建的整个目录结构复制到开发计算机上。 2. 使包含根项目的目录成为 IIS 应用程序的根。执行此操作最简单的方法是使用“文件系统资源管理器”(如果您使用的是 NTFS 文件系统),如下所示: a. 在“文件系统资源管理器”中,找到 Web 应用程序的根目录。 b. 右键单击该目录,然后单击属性。 c. 在属性对话框中,单击 Web 共享选项卡,然后单击“共享该文件夹”。 d. 在别名框中,键入 Web 应用程序的名称,然后单击确定。 e. 单击确定以关闭属性对话框。 3. 请确保要使用 Web 应用程序的所有用户身份(如 IUSR 帐户)具有这些目录的访问权限。 4. 生成解决方案。  
原创粉丝点击