2009-10-16 7 views
0

J'essaie d'ajouter une colonne booléenne dans SubSonic 3.0.0.3 et sans cette colonne, le code fonctionne bien, mais dès que j'ai une variable bool dans mon modèle, cela échoue avec l'erreur suivante:SimpleRepository et booléens avec SubSonic

Le nom "False" n'est pas autorisé dans ce contexte. Les expressions valides sont des constantes, des expressions constantes et (dans certains contextes) des variables. Les noms de colonne ne sont pas autorisés.

anyonw savoir si cela devrait être pris en charge et si elle est ce que je peut faire mal:

classe Object Data:

public class Desk 
{ 
    [SubSonicPrimaryKey] 
    public int DeskId { get; set; } 

    public string DeskName { get; set; } 

    public string SAPCode { get; set; } 

    public int LocationId { get; set; } 

    public bool Active { get; set; } 

} 

Utilisation de la classe:

var d = new Desk(); 
      d.DeskName = "Test"; 
      d.SAPCode = "12345"; 
      d.LocationId = 2; 
      d.Active = true; 

      var repository = new SimpleRepository("SubSonicTesting", SimpleRepositoryOptions.RunMigrations); 
      repository.Add(d); 
+0

Quelle base de données utilisez-vous? –

+0

Microsoft SQL Server 2008 Express - 09.00.4053 –

+0

Pouvez-vous essayer de renommer votre colonne et voir si vous avez toujours le même problème? –

Répondre

0

Je J'ai rencontré le même problème (version 3.0.0.3) lorsque j'ai ajouté une propriété bool nommée "IsAccountOwner". Le problème semble être avec les migrations parce que quand j'ai supprimé la table, SubSonic l'a recréé correctement avec la colonne ajoutée. J'utilise SQL Server 2008 Express, au cas où cela serait important. J'utilise SQL Server 2008 Express. L'erreur est liée à une requête malformée peut-être?

Questions connexes