Courant NHibernate OptimisticLock.None () provoque « La chaîne « none » est pas une valeur booléenne valide. »

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

Question

J'utilise le mapping suivant:

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

Mais quand je tente de créer la session, je reçois l'exception suivante:

  

[FormatException:. La chaîne 'none' est pas une valeur booléenne valide]

     

[XmlSchemaValidationException: L'attribut « verrouillage optimiste » est invalide - La valeur « none » est invalide en fonction de son type de données « http://www.w3.org/2001/XMLSchema:boolean » - La chaîne 'none' est pas une valeur booléenne valide]

J'utilise NHibernate 2.1.2.4000 et j'utilisais Fluent NHibernate 1.0RTM, mais essayé la dernière version 636 juste pour être sûr que ce n'est pas quelque chose qui a été fixé récemment ou quelque chose.

Comme une note de côté, au cas où je fais tout faux , je voudrais être en mesure d'apporter des modifications à la liste .Bids sans incrémenter version. J'ai vu un exemple sur blog de Ayende que fait ce que je voulais avec des propriétés.

Était-ce utile?

La solution

Je pense qu'il est un bug. noreferrer les valeurs valides pour la propriété optimistic-lock sont true | false , comme vous le dites dans votre commentaire. Il semble que Fluent NHibernate met la propriété sans pareil mais je générer le schéma XML pour être sûr.

Autres conseils

Comme le dit Jamie, ressemble à un bug (ou fonctionnalité manquante) dans Fluent NHibernate. J'ai ajouté un hack pour permettre la mise en faux et vrai sur optimisticLock ma fourchette github . Il semble fonctionner.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top