Der Verweis auf ein .NET 4.6-Projekt von ASP.NET 5 verursacht Buildfehler

9

In meinem ASP.NET 5 RC1-Projekt (nur für dnx46) versuche ich, einen Verweis auf ein klassisches Klassenbibliotheksprojekt hinzuzufügen, das auf .net 4.6 abzielt.

Ich erhalte diesen Fehler zur Build-Zeit: ... \ MSBuild \ 14.0 \ bin \ Microsoft.Common.CurrentVersion.targets (1819,5): Warnung MSB3274: Die primäre Referenz "... \ ClassLibrary1.dll" konnte nicht aufgelöst werden, da sie auf dem ". NETFramework, Version = v4.6 "Framework. Dies ist eine höhere Version als das aktuell ausgerichtete Framework ".NETFramework, Version = v4.5.1".

Warum passiert das? Mein ASP.NET 5-Projekt zielt nicht auf 4.5.1 ab. Laut der Datei project.json richtet es sich nur an dnx46. Ich kann nirgendwo eine Erwähnung von .net 4.5.1 finden.

Hier ist die project.json für mein WebApplication-Projekt:

%Vor%

Und hier ist die project.json, die der "Wrapping" -Prozess für mein ClassLibrary-Projekt erstellt:

%Vor%     
BowserKingKoopa 22.11.2015, 18:11
quelle

3 Antworten

2

Die Warnung ist immer noch vorhanden, wenn sie mit VS 2015 Update 1 erstellt wurde, aber die Web App funktioniert gut und kann eine Methode von .net4.6 assembly aufrufen.

    
Sergei Zinovyev 15.12.2015 21:59
quelle
1

versuchen Sie, Ihre Dienstprogramme und Runtime-Version zu aktualisieren, wenn Sie es noch nicht aktualisiert haben.

  • dnvm upgrade

Dann von der Shell-Punkt zu Ihrem Working \ Projekt-Ordner den Cache leeren und die Projektpakete wiederherstellen

  • dnu clear-http-cache
  • DNU-Wiederherstellung

Dann versuche es zu bauen

  • dnu build
Hasan Assi 23.11.2015 20:42
quelle
0

Es könnte sein, dass Sie VS 2015. Setting right target framework für ASP.NET 5 Web-Projekt . Das Problem war mit dem IIS-Targeting 4.5.1 verbunden, obwohl das Projekt auf das Framework 4.6 abzielte.

Tritt das Problem beim Erstellen von Visual Studio oder beim Ausführen von IIS auf?

Das Folgende funktioniert für uns.

ClassLibraryNet46

Dies ist eine klassische .NET Framework-Klassenbibliothek mit .NET 4.6 als Zielframework. Es gibt eine einzige Klasse.

BowserKingKoopa.cs

%Vor%

WebApplicationNetCore

Dies ist eine ASP.NET Core-Webanwendung, die nur eine Startup.cs-Klasse aufweist. Wir haben Visual Studio verwendet, um den Verweis auf das Net46-Projekt hinzuzufügen (Rechtsklick, Verweis hinzufügen ...)

Startup.cs

%Vor%

project.json

%Vor%     
Shaun Luttin 05.04.2016 01:23
quelle

Tags und Links