2016-04-10 5 views
4

ich eine .NET-Core (Paket) Bibliotheksprojekt erstellt haben, die eine Klasse wie folgt hat:Aktivieren DataAnnotations in Voll-/Core-Plattformen von .NET-Core

public class Subscriber //: Representation 
{ 
    [Required] 
    public SubscriberDef Info; 
    public Guid ProviderID; 
} 

Egal was ich tue, den Compiler ist nicht glücklich mit dem [Required] Attribut. Ich bin diese ständig gesagt:

NET Framework 4.5.1 - Not Available 
NET Platform 5.4 - Available 

Meine project.json zunächst so ausgesehen:

"frameworks": { 
    "net451": { 
    "dependencies": { 
     "WebApi.Hal": "2.6.0", 
    } 
    }, 
    "dotnet5.4": { 
    "dependencies": { 
     "Microsoft.CSharp": "4.0.1-beta-23516", 
     "System.Collections": "4.0.11-beta-23516", 
     "System.Linq": "4.0.1-beta-23516", 
     "System.Runtime": "4.0.21-beta-23516", 
     "System.Threading": "4.0.11-beta-23516", 
    } 
    } 
}, 
"dependencies": { 
    "Excqape": "0.7.0", 
    "System.ComponentModel.Annotations": "4.0.11-beta-23516" 
} 

Ich versuchte, den Zielrahmen Moniker (TFM) net451-net46 wechseln. Kein Glück. Ich habe versucht, verschiedene Versionen von System.ComponentModel.Annotations für beide Frameworks verwendet, immer noch kein Glück.

Was macht diese besonders merkwürdig ist, dass wenn ich eine ASP.NET-Core-Projekt zu erstellen, dann zwei Frameworks habe ich bin frei, wo Datenaufbelichtung respektiert werden und kompiliert:

"frameworks": { 
    "dnx46": { }, 
    "dnxcore50": { } 
}, 

Ich glaube, wenn Daten Anmerkungen innerhalb von ASP.NET Core arbeiten, dann würden sie sicher auch in .NET Core arbeiten?

Mache ich etwas falsch, oder sind Datenannotationen zu diesem Zeitpunkt für .NET Core fullCLR wirklich nicht verfügbar?

Antwort