Ich habe das ASP.NET Core SignalR Repo lokal geklont und versucht, die Lösung in der folgenden Umgebung zu öffnen.
IDE
Microsoft Visual Studio Enterprise 2015
Version 14.0.25431.01 Update 3
Microsoft .NET Framework
Version 4.6.01055
DOT NET CLI
λ dotnet --info
.NET Command Line Tools (1.0.0-preview2-1-003177)
Product Information:
Version: 1.0.0-preview2-1-003177
Commit SHA-1 hash: a2df9c2576
Runtime Environment:
OS Name: Windows
OS Version: 6.1.7601
OS Platform: Windows
RID: win7-x64
Am Ende sehe ich viele dieser Fehlermeldungen:
..\Repos\SignalR\src\Microsoft.AspNetCore.SignalR\Microsoft.AspNetCore.SignalR.csproj
: error: Der Standard-XML-Namespace des Projekts muss der MSBuild-XML-Namespace sein. Wenn das Projekt im MSBuild 2003-Format erstellt wurde, fügen Siexmlns="http://schemas.microsoft.com/developer/msbuild/2003"
es dem Element hinzu. Wenn das Projekt im alten 1.0- oder 1.2-Format erstellt wurde, konvertieren Sie es bitte in das MSBuild 2003-Format...\Repos\SignalR\src\Microsoft.AspNetCore.SignalR\Microsoft.AspNetCore.SignalR.csproj
Ich möchte wissen, wie ich das richtig beheben kann.
quelle
Antworten:
Die Projekte, die Sie öffnen möchten, haben das neue .NET Core csproj-Format. Dies bedeutet, dass Sie Visual Studio 2017 verwenden müssen, das dieses neue Format unterstützt.
Für ein bisschen Geschichte wurde zunächst .NET Core
project.json
anstelle von .NET Core verwendet*.csproj
. Nach einigen erheblichen internen Überlegungen bei Microsoft entschieden sie sichcsproj
jedoch, zu einem viel saubereren und aktualisierten Format zurückzukehren. Dieses neue Format wird jedoch nur in VS2017 unterstützt.Wenn Sie die Projekte öffnen wollen , wollen aber nicht bis zum 7. März warten th für die offizielle VS2017 Release, könnten Sie stattdessen Visual Studio - Code verwenden.
quelle
Beim Öffnen der Service Fabric GettingStartedApplication ist dieses Problem aufgetreten in Visual Studio 2015 ist . Die ursprüngliche Lösung wurde in VS 2017 auf .NET Core erstellt, und beim Öffnen im Jahr 2015 wurde der gleiche Fehler .
Hier sind die Schritte, die ich ausgeführt habe, um das Problem zu beheben.
Im Projekt-Tag wurde die folgende Zeile angezeigt:
<Project Sdk="Microsoft.NET.Sdk.Web" >
Befolgen Sie die Anweisungen in der Fehlermeldung, um
xmlns="http://schemas.microsoft.com/developer/msbuild/2003"
dieses Tag zu ergänzenEs sollte jetzt so aussehen:
Sah, dass kein Element ein Update-Attribut wie folgt hatte:
Kommentierte das wie folgt aus.
Zum nächsten Fehler: Die Version in der Paketreferenz wird nicht erkannt
Ich habe gesehen, dass die Version in csproj xml wie folgt vorhanden ist (zusätzliche PackageReference-Zeilen wurden der Kürze halber entfernt).
Das Versionsattribut wurde entfernt
Ich bekomme jetzt folgendes:
Bingo! Das Visual Studio One-Way-Upgrade hat begonnen! Lass VS die Magie machen!
Das Projekt wurde geladen, aber mit Referenz-Lib-Fehlern.
Die Fehler in der Referenzbibliothek wurden einzeln behoben, indem sie in NuGet entfernt und ersetzt wurden, damit das Projekt funktioniert!
Hoffe das hilft einem anderen Code-Reisenden :-D
quelle
Die Antwort von @ DavidG ist richtig, aber ich möchte hinzufügen, dass beim Erstellen über die Befehlszeile die entsprechende Lösung darin besteht, sicherzustellen, dass Sie die entsprechende Version von verwenden
msbuild
(in diesem speziellen Fall muss es sich um eine Version handeln fünfzehn).Führen Sie diese aus,
msbuild /?
um festzustellen, welche Version Sie verwenden, oder umwhere msbuild
zu überprüfen, von welchem Speicherort die Umgebung die ausführbare Datei übernimmt, und aktualisieren Sie die Tools (oder zeigen Sie auf den richtigen Speicherort), falls erforderlich.Laden Sie die neueste MSBuild - Tool von hier .
quelle
Wenn beim Versuch, eine .NET Core 2.0-App auf VSTS zu erstellen, dieser Fehler auftritt, stellen Sie sicher, dass Ihre Build-Definition die Agentenwarteschlange verwendet
Hosted VS2017
.quelle
Ich habe die gleichen Nachrichten erhalten, während ich nur msbuild von Powershell ausgeführt habe.
dotnet msbuild "./project.csproj"
arbeitete für mich.quelle
Wenn das Projekt nicht groß ist,
1- Ändern Sie den Namen des Ordnerprojekts
2- Erstellen Sie ein neues Projekt mit demselben Projekt (vor dem Umbenennen).
3- Fügen Sie dem neuen Projekt vorhandene Dateien aus dem alten Projekt hinzu (völlig gleich, gleiche Ordner, gleiche Namen, ...)
4- Öffnen Sie die neue Projektdatei (als XML) und das alte Projekt
5- Kopieren Sie die neue Projektdatei (XML-Inhalt) und fügen Sie sie in die alte Projektdatei ein
6- Löschen Sie das alte Projekt
7- Benennen Sie das alte Ordnerprojekt in alten Namen um
quelle