微软.net 编译器实现流程 (1)
Microsoft Visual Studio\2019\Enterprise\MSBuild\Current\Bin\Roslyn\csc.exe
参数 /noconfig /unsafe- /checked- /nowarn:1701,1702,1701,1702,2008 /fullpaths /nostdlib+ /platform:x64 /errorreport:prompt /warn:4 /define:TRACE;RELEASE;NETCOREAPP;NETCOREAPP3_1 /errorendlocation /preferreduilang:zh-CN /highentropyva+ /
SDK 源码 依赖 部分如下
/reference:C:\Users\admin\.nuget\packages\microsoft.aspnetcore.webutilities\2.2.0\lib\netstandard2.0\Microsoft.AspNetCore.WebUtilities.dll
/reference:C:\Users\admin\.nuget\packages\microsoft.bcl.asyncinterfaces\1.1.1\ref\netstandard2.1\Microsoft.Bcl.AsyncInterfaces.dll
/reference:C:\Users\admin\.nuget\packages\microsoft.bcl.hashcode\1.1.0\ref\netcoreapp2.1\Microsoft.Bcl.HashCode.dll
条件编译 编译器原理如下
/define:TRACE;RELEASE;NETCOREAPP;NETCOREAPP3_1 /
遍历所有 cs 源代码文件,空格隔开
Base64.cs Conf\BaseConf.cs Conf\ConstBean.cs Ctrl\BaseCtrl.cs Ctrl\CmdCtrl.cs Ctrl\HttpCtrl.cs Ctrl\MainCtrl.cs Ctrl\TimerCtrl.cs Db\BaseDb.cs Db\MyContext.cs Int\BaseInt.cs Int\Business\CargoRightsTransferInt.cs Int\Business\CarWarehouseInt.cs Int\Business\ContractGoodInt.cs