Ich fange gerade an, etwas über das Entitätsrahmenwerk zu lernen und habe nicht viel Erfahrung mit ORMs.Modelleigenschaft auf boolean in Entity Framework setzen
In meiner kleinen App habe ich eine Tabelle, diese SQL-Server-Tabelle hat mehrere Spalten einschließlich eines PrimaryKey (int) einen Namen (String) und ein Flag (Tinyint).
Wenn ich diese Tabelle importierte, wurde automatisch der Datentyp der Flags als Byte zugewiesen. Das ist in Ordnung, aber die Flagge sollte wirklich ein boolean, so dass ich
- klickte auf den Mapping Details
- meine Flagge Eigenschaft Selected
- den Typ von Byte geändert Boolean
- die Anwendung Rebuilt
ich habe dann diesen Fehler:
Error 2019: Member Mapping specified is not valid. The type 'Edm.Boolean[Nullable=True,DefaultValue=]' of member 'MyFlag' in type 'MyModel.MyItem' is not compatible with 'SqlServer.tinyint[Nullable=True,DefaultValue=]' of member 'MyFlag' in type 'MyModel.Store.MyItem'.
Gibt es eine Möglichkeit
MyItem item = new MyItem();
item.Flag = true;
und hat Flagge haben, speichern zu 1 in der Datenbank?
Warum sollten Sie das jemals anstelle eines Bool brauchen? –
@JonasStensved das Problem war, dass die Datenbanktabelle, die ich verwendete, den falschen Datentyp hatte. Nachdem ich die Tabelle geändert hatte, um ein "Bit" anstelle eines "Bytes" zu verwenden, funktionierte alles perfekt. –