Dotnet cli ile "-optimize" özelliğini nasıl kullanırım?

Sep 04 2020

Şimdiye kadar ben kullanıyorum CSC.exe gelen .NET Framework benim kısa C # komut derlemek. Çok süslü bir şey yok, sadece biraz keşfetmek istedim ve csc.exe zaten bilgisayarımdaydı. Artık projelerimi .NET Core sdk kullanarak yazmaya çalışıyorum (burada bulduğum:https://dotnet.microsoft.com/download/dotnet-core/3.1), "-Optimize" gibi bu klasik derleyici seçeneklerini nasıl belirteceğimden emin değilim.

Gerçekten "-optimize" ye ihtiyacım olmadığının farkındayım, ancak yine de denemek ve belki de henüz düşünmediğim diğer seçenekleri kullanmak istiyorum. Bulduğum tek çözüm, sağlanan csc.dll'yi kullanmaktı ("dotnet <path> /csc.dll ..." kullanarak), bu da csc.exe'ye tam dönüş yapmak anlamına geliyordu , bu da bütünün amacını yendi sdk.

Bu durum nasıl yeniden üretilir:

  • yeni dosya
  • "dotnet yeni konsol"
  • artık tüm necery dosyaları oluşturulur ("Project.csproj", "Program.cs", "bin /", "obj / ...")
  • "dotnet run"
  • şimdi ne var?

.Csproj dosyasına bir şeyler eklemem gerektiğini varsayıyorum çünkü dosyada <AllowUnsafeBlocks>true</AllowUnsafeBlocks>"-unsafe" için "" var, ancak "-optimize" için hiçbir şey bulamadım.

Ek bilgi: Bu sorunla ilgili olmadığını düşündüğüm Visual Studio Code kullanıyorum , ancak her ihtimale karşı.

Yanıtlar

Andy Sep 04 2020 at 01:40

"Release" için derleme bu seçeneği otomatik olarak etkinleştirir. Bunu kullanmak -c Releaseiçin dotnetkomuta geçin .

Örneğin, Releaseşuna benzer bir yapılandırmaya işaret eder:

<PropertyGroup Condition="'$(Configuration)' == 'Release'"> <DefineConstants>$(DefineConstants);RELEASE;TRACE</DefineConstants>
    <DebugSymbols>false</DebugSymbols>
    <DebugType>portable</DebugType>
    <Optimize>true</Optimize>
</PropertyGroup>

Daha fazla bilgi burada .