Hat C# 6.0 arbeiten .NET 4.0?

Erstellte ich ein Beispiel-Projekt mit C#6.0 goodies - null-die Ausbreitung und die Eigenschaften der Initialisierung als ein Beispiel, target-version .NET 4.0 und es... funktioniert.

public class Cat
{
    public int TailLength { get; set; } = 4;

    public Cat Friend { get; set; }

    public string Mew() { return "Mew!"; }
}

class Program
{
    static void Main(string[] args)
    {
        var cat = new Cat {Friend = new Cat()};
        Console.WriteLine(cat?.Friend.Mew());
        Console.WriteLine(cat?.Friend?.Friend?.Mew() ?? "Null");
        Console.WriteLine(cat?.Friend?.Friend?.TailLength ?? 0);
    }
}

Bedeutet es, dass ich C# 6.0 features für meine software, die Ziele .NET 4.0? Gibt es irgendwelche Einschränkungen oder Nachteile?

.Net-Versionen 2.0 - 3.5 CLR v2.0. Neuere Versionen verwenden CLR v4.0.
Bedenken Sie, dass, Optimierung wise: Sie sind das hinzufügen einer separaten if-null-check für jede Katze wie diese
Meine Güte. Ich habe die Entwicklung einer WCF-targeting-v4.6 nur "erinnert", dass die Produktions-server nicht aktualisiert werden, bis 2018. Ich dachte ein Monat im Wert von Arbeit erfordern würde, ein paar Tage von refactoring. Fertig in fünf Minuten.Danke, Microsoft! 😀

InformationsquelleAutor MajesticRa | 2015-03-08

Schreibe einen Kommentar