Właśnie przeszedł jeden z moich projektów i użył kilka nowych funkcji C# 6, takich jak operator propagacji zerowej handler?.Invoke(null, e)
, który buduje w Visual Studio. Jednak gdy uruchomię mój skrypt do publikowania na pakiety Nuget, otrzymuję błędów kompilacji mówiąc:NuGet Pack -Build wydaje się nie rozumieć C# 6.0
EventName.cs(14,66): error CS1056: Unexpected character '$'
EventName.cs(69,68): error CS1519: Invalid token '=' in class, struct, or interface member declaration
EventName.cs(69,74): error CS1520: Method must have a return type
Wydaje Nuget używa starszej wersji kompilatora, ale zastanawiałem się, czy ktoś wiedział obejść lub konfiguracja, którą można ustawić w celu rozwiązania problemu.
NuGet nie powinien kompilować niczego. Domyślam się, że problem jest w twoim scenariuszu. – svick
@svick Skrypt pozostał niezmieniony, jedyną zmianą było użycie funkcji C# 6.0. Proszę sprawdzić sam skrypt, ale po prostu wywołując CLI nuget - https://github.com/G3N7/LAN.Core.Eventing/blob/master/NugetBuild.cmd – Gent
Niestety, nie wiedziałem o tym ' -Build' opcja (i jakoś tęskniłem za tym w twoim tytule). Myślę, że rozwiązaniem byłoby nie używać tego. – svick