2015-11-19 8 views
5

Ich verwende VS2015 Gemeinschaft, ich habe .NET 4.6.01040 installiert und ich folgte these Anweisungen ASP.NET 5.IEnumerable <> wird in einer Baugruppe definiert, die nicht verwiesen wird - neue NuGet -Klassenbibliotheksprojekt

zu installieren

Ich möchte eine Website von MVC5 zu MVC6 alle anderen Updates, die damit geliefert wurden, zu migrieren, also begann ich mit dem Entity Class-Bibliotheksprojekt, das mein Datenmodell enthält. Dies ist, wie meine project.json Datei wie folgt aussieht:

{ 
    "version": "1.0.0-*", 
    "description": "test.Entities Class Library", 
    "authors": [ "me" ], 
    "tags": [ "" ], 
    "projectUrl": "", 
    "licenseUrl": "", 
    "frameworks": { 
    "net461": { 
     "dependencies": { "System.Runtime": "4.0.0.0" } 
    }, 
    "dotnet5.4": { 
     "dependencies": { 
     "Microsoft.CSharp": "4.0.1-beta-23516", 
     "System.Runtime": "4.0.21-beta-23516", 
     "System.Linq": "4.0.1-beta-23516" 
     "System.Collections": "4.0.11-beta-23516", 
     "System.Threading": "4.0.11-beta-23516" 
     } 
    } 
}, 
    "dependencies": { 
    "EntityFramework.Core": "7.0.0-rc1-final", 
    } 
} 

ich den Rahmen Typen "net451"-"net461" geändert, weil ich dachte, dass das war das Problem, und ich habe auch versucht, den Verweis auf die Abhängigkeiten hinzuzufügen, aber kein Glück. ..

geschieht Der Fehler ist hier:

[NotMapped] 
public decimal TotalOrders => Math.Round(Orders.Where(x => x.Code.StartsWith("5") 
          .Sum(x => x.Amount),MidpointRounding.AwayFromZero); 

Der vollständige Fehler ist:

CS0012 The type 'IEnumerable<>' is defined in an assembly that is not referenced. You must add a reference to assembly 'System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'. test.Entity..NET Framework 4.6 

Haben Sie eine Idee, wie das mit den neuen Projekttypen funktioniert?

+0

vergessen zu erwähnen, dass ich versuchte, mit 'net46' auch vor' net461' . Ich habe das .NET 4.6.1 RC installiert, weil ich dachte, es könnte funktionieren – GregoryHouseMD

+1

Oh, warte, versuch die 'System.Runtime' Paket-Referenz unter den 'frameworkAssemblies' Knoten von' net46' zu setzen und versuche –

+0

Danke :) Ich musste Visual wieder öffnen Studio, um die Fehler loszuwerden, aber es funktionierte – GregoryHouseMD

Antwort

7

Weil es mir nicht klar, aus der Antwort war, was nötig war, werde ich es hier schaffen ....

{ 
    "version": "1.0.0-*", 
    "description": "test.Entities Class Library", 
    "authors": [ "me" ], 
    "tags": [ "" ], 
    "projectUrl": "", 
    "licenseUrl": "", 
    "frameworks": { 
     "net461": { 
     "dependencies": { "System.Runtime": "4.0.0.0" }, 

     "frameworkAssemblies": { 
     "System.Runtime": "4.0.10.0" 
     } 

    }, 
    "dotnet5.4": { 
     "dependencies": { 
     "Microsoft.CSharp": "4.0.1-beta-23516", 
     "System.Runtime": "4.0.21-beta-23516", 
     "System.Linq": "4.0.1-beta-23516" 
     "System.Collections": "4.0.11-beta-23516", 
     "System.Threading": "4.0.11-beta-23516" 
    } 
    } 
    }, 
    "dependencies": { 
    "EntityFramework.Core": "7.0.0-rc1-final", 
    } 
} 
6

net461 Zielframework Name (TFM) stellt den vollständigen Desktop .NET Framework und wenn Sie System.Runtime aus diesem Rahmen verweisen möchten, müssen Sie den "System.Runtime": "4.0.0.0" Eintrag zu frameworkAssemblies Knoten verschieben.

+0

Es funktioniert auch mit der neuesten Version 4.0.2.0 – GregoryHouseMD

Verwandte Themen