net中的编译

1、MSBuild

四个基本块(属性、项、任务、目标):

MSBuild属性:   属性是一些键/值对,主要用来存储一些配置信息。

MSBuild  项:   主要是存储一些项目文件信息,以及文件的元数据信息(如版本号)。

MSBuild任务:   Build过程中的一些原子操作(如CSC 编译cs文件、MakeDir 创建目录)

MSBuild目标:   按特定的顺序将任务组织在一起,并允许在命令行单独指定各个部分。

命令行示例:

C:WINDOWSMicrosoft.NETFrameworkv4.0.30319msbuild.exe C: ask3currentdebugwf.oa.com.sln /t:Rebuild /p:Configuration=Release;OutDir=C: ask3 arget

示例说明:

MSBuild.exe [ProjectFile]

ProjectFile可以为sln或csproj

运行效果如下图:

 

2、aspnet_compiler.exe

新建web工程并且位置是文件系统的时候,vs2005只是帮你建好了一个sln文件,这个东西只是指引msbuild 如何进行编译的,过程是:ide 调用 msbuild ,msbuild解析sln文件,msbuild调用aspnet_compiler.exe进行网站的编译。所以aspnet_compiler.exe只是负责进行网站的编译的。

使用示例:

C:WINDOWSMicrosoft.NETFrameworkv4.0.30319aspnet_compiler.exe  -v / -p  C: ask3current C: ask3 arget 

示例说明:

aspnet_compiler.exe -p physicalOrRelativePath -v / targetPath -u

在这种情况下,physicalOrRelativePath参数是指网站文件所在的完全限定目录路径,或者相对于当前目录的路径。在 physicalOrRelativePath 参数中允许使用句点 (.) 运算符。-v 开关指定一个根目录,编译器将使用该目录来解析应用程序根目录引用,例如,用代字号 (~) 运算符。当您为 -v 开关指定值 / 时,编译器将使用物理路径作为根目录来解析路径。

targetPath 参数是目标目录的物理路径

 

2、CSC

编译 File.cs 以产生 File.dll:csc /target:library File.cs

  

参考资料:

   https://msdn.microsoft.com/zh-cn/library/ms229863(v=vs.80).aspx ASP.NET 编译工具 (Aspnet_compiler.exe)

   https://msdn.microsoft.com/zh-cn/library/ms227976(v=vs.80).aspx  如何:预编译 ASP.NET 网站以进行部署 

   http://www.cnblogs.com/l_nh/archive/2012/08/30/2662648.html  MSBuild入门

   https://msdn.microsoft.com/zh-cn/library/s5c8athz(v=VS.80).aspx  Csc 任务 

原文地址:https://www.cnblogs.com/smallidea/p/4627046.html