zoukankan      html  css  js  c++  java
  • .NET 部署03Web Deployment项目01概述

    原文地址:http://msdn.microsoft.com/en-us/library/aa479568.aspx

     

    摘要

    VS 2005 通过复制(Copy)和发布(PublishWeb网站来部署(deployment)网站。但在很多高级的情况下,开发者需要下面这些能力。

    • 更多的控制程序集的命名和输出。
    • 自定义生成(build)前和生成(build)后的处理动作。
    • 在生成(build)期间,排除、添加和转换文件和目录的能力。
    • 根据生成(build)配置,来修改Web.config文件以改变数据库连接字符串,应用程序设置,或是Web引用的URL。例如,在开发,测试,演示和发布(release)时,使用不同的值。

    本篇及下面的文章介绍对于更多高级的情况,VS 2005提供的一个解决方案——Web Deployment 项目。

     

    WebDeployment 项目

    Web Deployment 项目是Visual Studio 2005的插件包,它不会改变Visual Studio 2005任何特性的行为,只是简单地添加一个额外的功能,用来Web站点的部署。

    Web Deployment 项目是与其相关的一个Web 站点的MSBuild项目,它完全集成到Visual Studio 2005 生成配置管理中,并为编译和部署提供配置选项,例如调试(Debug)和发布(Release)。Web Deployment项目是一个扩展,能够创建生成前(pre-build)和生成后(post-build)的动作。

    Web Deployment项目不会改变Visual Studio 2005 Web站点的生成方式。它只是把Web站点作为输入,把产生的预编译Web站点作为输出,不会以任何方式改变源Web站点项目的文件。

    特性概述

    Web Deployment 项目为生成(build)和发布(deployASP.NET 2.0 Web站点提供如下特性:

    • ASP.NET 2.0 预编译(precompilation)作为生成(build)处理的一部分。
    • 为从Web项目产生已编译的程序集提供更多灵活的选项:
      • 整个Web站点的单个程序集。
      • 每个文件夹一个程序集。
      • 所有UI组件的单个程序集。
      • Web站点中每个编译的文件一个程序集。
    • 程序集签名。
    • 自定义生成前(pre-build)和生成后(post-build)的动作。
    • 从生成(build)排除文件夹。
    • 修改Web.config文件中的设置,例如,基于Visual Studio 的生成(build)配置来修改<connectionString>元素。
    • 支持创建 .msi 安装项目。

    Web Deployment 项目的扩展性能够根据你自己的需要配置生成(build)和发布(deploy)的处理过程。这个过程不会牺牲已被Visual Studio 2005Web站点优化的工作流。

     

    安装 Web Deployment 项目

    安装Web Deployment 项目会安装一个 VS 2005 插件包,和一个新的 ASP.NET 合并工具 (aspnet_merge.exe)。默认情况下,Web Deployment项目会安装在如下表所示的位置。

    Location

    Files

    C:/Program Files/MSBuild/Microsoft/WebDeployment/v8.0

    aspnet_merge.exe

    Microsoft.WebDeployment.targets

    Microsoft.WebDeployment.Tasks.dll

    C:/Program Files/Microsoft Visual Studio 8/Common7/Packages

    MsWebDeployProj.dll

    WebDeploy.wdproj

    C:/Program Files/Microsoft Visual Studio 8/Common7/Packages/1033

    MsWebDeployProjUi.dll

    你可以把 Web Deployment 项目安装在没有 VS 2005 的机器上。如果你想在一个专门用来生成(build)的机器上使用 MSBuild,那么这个特性就非常有用。

    新的菜单命令

    安装 Web Deployment 项目会在“生成(Build)”菜单中添加一个“Add Web Deployment Project”命令,以及在解决方案浏览器上所选的Web项目中添加一个快捷菜单。只有本地IIS和文件系统的Web站点支持才支持这个命令,而远程 FrontPage 或是 FTP Web 站点不支持。

    当创建一个Web 部署项目时,你创建的Web站点会与这个Web部署项目关联。一般来说,Web站点与Web部署项目是一对一的关系。解决方案中的每个Web站点都有自己的Web部署项目。你也可以为同一个Web站点创建多个Web部署项目。

    通过自定义生成行为,可以把多个Web站点合并到一个Web站点的高级情况,看一下后面介绍的自定义Web 部署项目。

     

    添加一个Web Deployment项目

    向一个Web站点添加WebDeployment项目的步骤如下:

    1.    在解决方案浏览器总,选择Web站点的名字;

    2.    在“Build”菜单中,选择 “Add Web Deployment Project”。“Add Web Deployment Project”对话框如下所示:

    Web Deployment

    3.    规定项目的名字和位置。

    默认情况,Web Deployment项目的名字是Web站点加上“_deploy”。默认位置同解决方案在同一个文件夹。在下面的例子,Web站点路径为“C:/MyProjects/MyWeb”,因此,Web Deployment项目的名称为“MyWeb_deploy.webdeployproj”,项目文件夹路径为“C:/MyProjects/MyWeb_deploy/”。

    4.    点击“OK”。

    一个新的项目被添加到解决方案中,并自动与Web站点关联。现在,这个新的Web Deployment 项目是生成处理的一部分。

    提示:WebDeployment 项目不包含解决方案中的任何文件和目录,它只是一个MSBuild项目文件,使你为与此关联的Web站点,自定义生成(build)规则。你可以在“Properties”窗口查看当前Web Deployment项目的属性。

    Web Deployment

  • 相关阅读:
    CodeForces 7B
    CodeForces 4D
    离散化
    线段树入门
    洛谷 P3951 小凯的疑惑(赛瓦维斯特定理)
    Codeforces 1295D Same GCDs (欧拉函数)
    Codeforces 1295C Obtain The String (二分)
    Codeforces 1295B Infinite Prefixes
    Codeforces 1295A Display The Number(思维)
    Codeforces 1294F Three Paths on a Tree(树的直径,思维)
  • 原文地址:https://www.cnblogs.com/liuning8023/p/2131491.html
Copyright © 2011-2022 走看看