Fluent NHibernate OptimisticLock.None () bewirkt, dass „die Zeichenfolge‚none‘ist kein gültiger boolescher Wert.“

StackOverflow https://stackoverflow.com/questions/2573607

Frage

Ich verwende die folgende Abbildung:

public class LoadMap : IAutoMappingOverride<Load> {
    public void Override(AutoMapping<Load> mapping) {
        mapping.HasMany(x => x.Bids).OptimisticLock.None();
        mapping.Version(x => x.Version);
    }
}

Aber wenn ich versuche, die Sitzung, die ich die folgende Ausnahme erhalten zu erstellen:

  

[Format: Der String 'none' ist kein gültiger boolescher Wert.]

     

[XmlSchemaValidationException: Das 'optimistisch-Lock' Attribut ist ungültig - Der Wert 'none' ist ungültig nach seinem Datentyp ‚ http://www.w3.org/2001/XMLSchema:boolean ‘- Der String 'none' ist kein gültiger boolescher Wert]

.

Ich verwende NHibernate 2.1.2.4000 und ich wurde mit Fluent NHibernate 1.0RTM, aber versucht, die neuesten Build 636 nur um sicher zu sein, dies ist nicht etwas, das vor kurzem oder etwas festgelegt wurde.

Als Randbemerkung, , falls ich tue dies alles falsch , würde Ich mag Lage sein, Änderungen an der .Bids Liste ohne Version erhöht wird. Ich sah ein Beispiel auf Ayende Blog dass tat, was ich mit Eigenschaften.

gesucht
War es hilfreich?

Lösung

Ich denke, es ist ein Fehler ist. Gültige Werte für die optimistische Blockier-Eigenschaft sind true | false , wie Sie Zustand in Ihrem Kommentar. Es scheint, dass Fluent NHibernate die Eigenschaft zu keinem setzt aber ich würde das XML-Schema generiert sicher sein.

Andere Tipps

Wie Jamie sagt, sieht aus wie ein Bug (oder fehlende Funktion) in Fluent NHibernate. Ich habe einen Hack hinzugefügt, damit Falsch und True setzen auf OptimisticLock in meine Github Gabel . Es scheint zu funktionieren.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top