`

用 MSBuild 发布 Asp.Net 工程

    博客分类:
  • Tip
阅读更多

 方法1:用调用MSBuild执行自定义的MSBuild脚本文件

第一步:创建MSBuild脚本文件,并将其复制到目标工程所在路径。
第二步:用MSBuild执行上述脚本文件。
     [MSBuild.EXE path] /p:PublishProject=[Target project];Configuration=Release;PublishDestination=[Publish destination dir] /t:PublishToFileSystem [MSBuild file]
 
     例:
     MSBuild脚本文件(保存为SampleProject.build):
<?xml version="1.0" encoding="utf-8" ?>
<Project ToolsVersion="4.0" DefaultTargets="PublishToFileSystem"
         xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
     <Import Project="${PublishProject}" />
     <Target Name="PublishToFileSystem" DependsOnTargets="PipelinePreDeployCopyAllFilesToOneFolder">
          <ItemGroup>
               <PublishFile Include="${_PackageTempDir}\**\*.*" />
          </ItemGroup>
          <Copy SourceFile="@(PublishFile)"
                DestinationFiles="@(PublishFile->'$(PublishDestination)\%(RecursiveDir)%(Filename)%(Extension)')"
                SkipUnchangedFiles="True" />
     </Target>
</Project>
 
命令行执行:
>MSBuild /p:PublishProject=SampleProject.csproj;Configuration=Release;PublishDestination=\\192.168.1.2\SampleProject /t:PublishToFileSystem SampleProject.build
 
方法2:用NAnt或类似工具,先调用MSBuild编译,再复制结果文件到目标发布路径
第一步:调用MSBuild编译目标工程
编译结果所在路径为:
[ASP.NET project dir]/obj/[Debug/Release]/Package/PackageTmp
     第二步:将上一步所得编译结果复制到发布路径
 
     例(NAnt脚本):
<exec program="${MSBuild.EXE}" workingdir="${SampleProjectDir}">
     <arg value="SampleProject.csproj" />
     <arg value="/p:Configuration=Release" />
     <arg value="/clp:ErrorsOnly" />
     <arg value="/t:PipelinePreDeployCopyAllFilesToOneFolder" />
</exec>
<copy todir="${PublishDestination}" overwrite="true">
     <fileset basedir="${SampleProjectTmpPackageDir}">
          <include name="**.*" />
     </fileset>
</copy>
 

 

分享到:
评论

相关推荐

    基于-asp.net-的网站设计(1).doc

    7. **部署与发布**:ASP.NET应用可以发布到IIS(Internet Information Services)服务器上,通过配置Web.config文件来调整应用程序的行为,并使用MSBuild或Visual Studio进行部署。 8. **数据库集成**:ASP.NET通常...

    ASP.NET毕业设计——ASP.NET+SQL蒋和平_办公自动化管理系统的设计与实现(源代码+论文).zip

    通过这个毕业设计项目,学生不仅可以深入理解和掌握ASP.NET开发技术,还能熟悉SQL Server数据库的使用,同时提升项目管理和团队协作的能力。对于想要进入IT行业的毕业生来说,这是一个非常有价值的经验积累。

    .NET平台下WEB应用程序的部署(安装数据库和自动配置)

    其中,.NET Framework提供了丰富的类库和组件,支持开发Web应用,如ASP.NET,使得开发者可以使用C#、VB.NET等语言编写服务器端代码。 在部署Web应用程序时,我们需要确保目标服务器上已经安装了相应的.NET ...

    杨中科.NET视频教程种子及课件教案.rar

    4. **ASP.NET Web应用开发**:讲解如何创建Web应用程序,包括MVC模式、WebAPI和Blazor等现代Web开发技术。 5. **ADO.NET数据库编程**:如何与SQL Server或其他数据库系统交互,执行CRUD操作,使用DataSet、...

    asp开发经验技巧宝典软件工程师典藏(全)

    10. **ASP.NET的过渡**:随着ASP.NET的出现,学习ASP的工程师也需要关注其新特性,如控件模型、面向对象编程以及更高效的页面生命周期管理。 11. **Web服务与API**:了解如何在ASP中调用和创建Web服务,如SOAP或...

    NET框架设计 模式、配置、工具.pdf

    ASP.NET提供了一系列的控件和服务,如MVC(模型-视图-控制器)架构,用于分离业务逻辑和用户界面;WebAPI用于构建RESTful服务;SignalR支持实时通信,实现服务器到客户端的推送。 最后,可能会讨论到测试工具,如...

    aspnetwebstack-v2-rc

    【aspnetwebstack-v2-rc】是一个针对ASP.NET MVC4框架的源代码包,它包含可以成功运行的实现,不同于网上可能找到的一些无法正常运行或版本过高的资源。这个版本是RC(Release Candidate),意味着它是发布前的最后...

    ACCP5.0-深入.Net平台(3)

    .NET框架的核心组件包括公共语言运行时(CLR)、基类库(BCL)以及ASP.NET、Windows Forms等开发框架。 2. **C#语言高级特性**:在第五、六章中,可能涉及了C#的一些高级特性,如匿名方法、lambda表达式、LINQ...

    学生管理系统

    在实践中,他们还能接触到版本控制(如Git)、项目构建(如MSBuild或Visual Studio的解决方案)以及自动化测试等软件工程的最佳实践。 总的来说,开发一个学生管理系统是学习.NET技术的绝佳途径,它能帮助初学者...

    基于C#的IT固定资产管理系统源码.zip

    此项目可能使用ASP.NET来开发系统的前端Web界面,提供用户友好的交互体验。 【压缩包子文件的文件名称列表】"MF00749-IT固定资产管理系统源码"可能包含以下组成部分: 1. **源代码文件**:.cs文件,包含C#源代码,...

    testweb项目工程

    在.NET框架中,Web应用程序通常基于ASP.NET技术,它可以提供MVC(Model-View-Controller)和Web Forms两种主要的开发模式。MVC模式强调分离关注点,将业务逻辑、数据处理和用户界面分离开来;Web Forms则提供了一种...

    C#入门工程,Helloworld,Helloworld-WinForm

    C#是一种由微软公司开发的面向对象的编程语言,它被广泛应用于开发Windows桌面应用程序、Web应用程序以及游戏等。...随着技能的提升,可以尝试更复杂的项目,如数据库交互、多线程编程、WPF应用或ASP.NET Web应用等。

    人力资源管理系统开发

    后端开发可能使用.NET Framework(如ASP.NET MVC或ASP.NET Core)、Java(Spring Boot)、Python(Django或Flask)等。 2. **数据库设计**:系统需要一个强大的数据库来存储员工信息,包括个人基本信息、工作经历、...

    TypeScript Handbook 中文版

    - **结合 ASP.NET v5 使用 TypeScript**:介绍如何在 ASP.NET v5 中集成 TypeScript。 - **架构概述**:提供 TypeScript 内部架构的基本介绍。 - **发展路线图**:分享 TypeScript 的未来发展计划和发展方向。 ####...

    OA系统(VS2003)

    开发OA系统时,开发者可能会用到.NET Framework的相关技术,如ASP.NET(用于构建Web应用程序)、ADO.NET(用于数据库交互),并可能结合XML、Web Services等进行数据交换和远程调用。此外,版本控制工具(如SVN或Git...

    MaxtoCode.rar

    它支持多种.NET项目类型,包括但不限于ASP.NET、Windows Forms、WPF和Console应用程序。同时,MaxtoCode允许开发者为特定的类库或模块选择不同的混淆策略,以平衡安全性和调试的便捷性。 在实际应用中,MaxtoCode还...

    ndoc-devel-v1.3.1

    - 支持.NET Framework的各类项目,包括.NET库、ASP.NET Web应用程序和Windows服务等。 - 可以集成到Visual Studio中,作为IDE内的一个插件,方便开发者在编写代码的同时编写文档。 通过这个压缩包,开发者可以获得...

    C#软件项目开发全程剖析

    在C#软件项目开发中,理解.NET Framework及其组件如ASP.NET、WPF、Windows Forms、Entity Framework等是非常重要的。这些组件提供了构建各种类型应用程序的能力,从Web应用到桌面应用,再到数据库驱动的应用。书中会...

    TypeScript手册

    - **结合 ASP.NET 使用 TypeScript**: 如果使用 ASP.NET,可以查看如何将 TypeScript 集成到该框架中。 - **架构概述**: 描述 TypeScript 的内部架构和设计原则。 - **发展路线图**: TypeScript 的未来发展方向和...

Global site tag (gtag.js) - Google Analytics