Ich habe gerade Visual Studio 2012 Professional und verwende den Entity-Framework (5.0) Designer. Ich habe versucht, eine Eigenschaft zu einem Enum zu konvertieren, und nach diesem Microsoft-Video ich Klicken Sie mit der rechten Maustaste auf die Eigenschaft und wählen Sie Convert to Enum
at (2:06) - in meinem Kontextmenü gibt es keine Option zum Konvertieren.
Hier versuche ich, Rolle zu Enum zu konvertieren. Ich habe Role als Int32 definiert.
Was mache ich falsch?
Nach dem Video in der Post genau, öffnete ich die Model Browser
, um eine Enum manuell hinzuzufügen. Nachdem ich das getan hatte, und legte die Rolle auf das Enum, das ich erstellt hatte. Um zu testen, ob ich jetzt Convert To Enum
für die Eigenschaft verwenden könnte, habe ich den Typ zurück in Int32 geändert und dann mit der rechten Maustaste auf die Eigenschaft geklickt und und low und ich sehe die Option Convert To Enum
im Kontextmenü!
Also, wenn Sie Probleme haben, sind dies die Schritte, die ich benutzt habe, um die Option Convert To Enum
zu aktivieren. Dies ist meiner Meinung nach ein Hack, da ich dieses Verhalten jetzt nicht mit einer neuen Lösung und einem neuen Projekt reproduzieren kann. Offenbar sobald der Model Browser zum ersten Mal geöffnet wurde (oder die kompletten Schritte unten) zeigt er jetzt die Option Convert To Enum
.
-1. Im Schnellstart-Suchfenster tippte ich Model Browser
ein und öffnete es.
-2. Wählen Sie Add New Enum Type...
, indem Sie im Modellbrowser für Ihr Datenmodell mit der rechten Maustaste auf Enum Types
klicken.
-3. Setzen Sie Ihre Eigenschaft auf die Enumeration, blättern Sie in der Combobox zum Ende der aufgelisteten Typen und wählen Sie die Enumeration.
Ich hatte dieses Problem auch !! Ich habe das Entity Framework von 4 auf 4.5 geändert und das Problem gelöst! ;)
Als ich das gleiche Problem hatte, bestand die Lösung darin, Target Framework auf ".NET Framework 4.5" zu setzen.
Was war der Typ der Eigenschaft vor dem Versuch, sie in eine enum-Eigenschaft zu konvertieren? Die Option "In Enum konvertieren" ist nur verfügbar, wenn der Typ der Eigenschaft einer der Typen ist, die dem zugrunde liegenden Enum-Typ entsprechen können: Edm.Byte, Edm.Sbyte, Edm.Int16, Edm.Int32 oder Edm.Int64. Wenn der Eigenschaftstyp keiner dieser Typen ist, können Sie ihn nicht direkt in enum konvertieren, da der Designer nicht weiß, was der zugrunde liegende Typ sein soll und was noch wichtiger ist, ob er mit Ihrer Datenbank arbeiten würde.
Tags und Links .net entity-framework entity-framework-5 enums