如何在 dotnet cli 中使用“-optimize”?
How do I use "-optimize" with dotnet cli?
到目前为止,我一直在使用 .NET Framework 中的 csc.exe 来编译我的简短 C# 脚本。没什么特别的,我只是想探索一下,csc.exe 已经在我的电脑上了。现在我正在尝试使用 .NET Core sdk(我在这里找到:https://dotnet.microsoft.com/download/dotnet-core/3.1)编写我的项目,我不确定如何指定那些经典的编译器选项例如“-optimize”。
我知道我并不真的需要“-optimize”,但我仍然想尝试并可能使用一些我尚未考虑过的其他选项。我想出的唯一解决方案是使用提供的 csc.dll(使用“dotnet /csc.dll ...”),这意味着要绕一圈回到 csc.exe 这违背了整个 sdk 的目的。
如何重现这种情况:
- 新建文件夹
- “dotnet 新控制台”
- 现在已生成所有必需文件(“Project.csproj”、“Program.cs”、“bin/”、“obj/...”)
- "网络运行"
- 现在怎么办?
我想我需要在 .csproj 文件中添加一些东西,因为它有“<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
”代表“-unsafe”,但是,我没有找到任何关于“-optimize”的东西。
附加信息:
我正在使用 Visual Studio 代码 ,我认为这与此问题无关,但以防万一。
为“发布”编译会自动打开该选项。要使用它,请将 -c Release
传递给 dotnet
命令。
例如,Release
指向如下所示的配置:
<PropertyGroup Condition="'$(Configuration)' == 'Release'">
<DefineConstants>$(DefineConstants);RELEASE;TRACE</DefineConstants>
<DebugSymbols>false</DebugSymbols>
<DebugType>portable</DebugType>
<Optimize>true</Optimize>
</PropertyGroup>
更多信息here。
到目前为止,我一直在使用 .NET Framework 中的 csc.exe 来编译我的简短 C# 脚本。没什么特别的,我只是想探索一下,csc.exe 已经在我的电脑上了。现在我正在尝试使用 .NET Core sdk(我在这里找到:https://dotnet.microsoft.com/download/dotnet-core/3.1)编写我的项目,我不确定如何指定那些经典的编译器选项例如“-optimize”。
我知道我并不真的需要“-optimize”,但我仍然想尝试并可能使用一些我尚未考虑过的其他选项。我想出的唯一解决方案是使用提供的 csc.dll(使用“dotnet
如何重现这种情况:
- 新建文件夹
- “dotnet 新控制台”
- 现在已生成所有必需文件(“Project.csproj”、“Program.cs”、“bin/”、“obj/...”)
- "网络运行"
- 现在怎么办?
我想我需要在 .csproj 文件中添加一些东西,因为它有“<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
”代表“-unsafe”,但是,我没有找到任何关于“-optimize”的东西。
附加信息: 我正在使用 Visual Studio 代码 ,我认为这与此问题无关,但以防万一。
为“发布”编译会自动打开该选项。要使用它,请将 -c Release
传递给 dotnet
命令。
例如,Release
指向如下所示的配置:
<PropertyGroup Condition="'$(Configuration)' == 'Release'">
<DefineConstants>$(DefineConstants);RELEASE;TRACE</DefineConstants>
<DebugSymbols>false</DebugSymbols>
<DebugType>portable</DebugType>
<Optimize>true</Optimize>
</PropertyGroup>
更多信息here。