2017-02-23 4 views
2

Ich habe diesen Artikel gelesen: https://blogs.msdn.microsoft.com/cesardelatorre/2016/06/28/running-net-core-apps-on-multiple-frameworks-and-what-the-target-framework-monikers-tfms-are-about/ über die Verwendung verschiedener Moniker für .NET Core App und ich frage mich, was ist der Unterschied zwischen dem Erstellen von ConsoleApp mit .NET Framework 4.5.1 und Erstellen von ConsoleApp. NET-Kern mit einem auf .NET-Framework eingestellten Verweis 4.5.1. Wird erwartet, dass es irgendwelche Verhaltensunterschiede gibt? Der einzige Unterschied, den ich mir vorstellen kann ist, dass der erste csproj verwendet und der zweite xproj verwendet (ok xproj ist jetzt veraltet, also neues csproj-Format). Ich stelle diese Frage, weil meine aktuelle App auf .NET Framework 4.5.1 basiert und ich überlegte, sie auf .NET Core über .NET Framework zu migrieren.Running .NET Core App auf .NET Framework

+0

Der zweite wird bald nach .NET Core SDK 1.0 Version auch csproj verwenden. –

+0

@Lexi Ja, ich habe es erwähnt. – MistyK

Antwort

2

Der Aufruf der project.json Build-Tools das ".NET Core SDK" war nur teilweise wahr: Die Tools können verwendet werden, um andere Laufzeiten als .NET Core, d. Eine Konsolenanwendung, die für .NET Framework mit project.json erstellt wurde, entspricht genau einer Konsolenanwendung, die mit csproj für .NET Framework erstellt wurde.

Das neue csproj-Format versucht dieses häufige Verwechseln zu korrigieren. Sie werden in VS 2017 feststellen, dass Projekte das ".NET SDK", auch bekannt als "Microsoft.NET.Sdk", verwenden (den Core aus dem Namen fallen gelassen). Dieses neue SDK kann zum Erstellen von .NET Framework-, .NET Standard und .NET Core-Projekten verwendet werden.

Verwandte Themen