Depuis que je passe à VS2010, plusieurs fois par jour, je reçois une erreur de compilation dans mon fichier dbml:erreur de cartographie étrange dans LINQ to SQL fichier dbml dans VS2010
DBML1005: Mapping between DbType 'bigint' and Type
'MyNamespace.SecurityToken' in Column 'SecurityToken' of Type
'Employee' is not supported
Lorsque je redémarre VS2010 l'erreur disparait . Je n'ai aucun problème à exécuter mon application en utilisant ce fichier dbml (en particulier, il n'y a aucun problème à obtenir des valeurs correctes dans la propriété SecurityToken
de Employee
objets).
La propriété SecurityToken
est d'un type enum défini comme suit:
[Flags]
public enum SecurityToken : long
{
None = 1,
Admin = 2,
......
}
La colonne SecurityToken
dans la base de données est de type bigint
.
Ai-je raté quelque chose? Il est particulièrement étrange que l'erreur ne se produise parfois que lorsque j'écris du code qui n'est pas du tout lié au modèle LINQ.
Vous pouvez également déclarer l'énumération dans le même espace de noms que le DataContext. IIRC, ce 'bug' était également présent dans VS2008. – leppie
@leppie: il est intéressant que parfois le mappage fonctionne correctement sans utiliser le mot-clé global mais parfois ... – Alex
Je vais essayer et signaler si le problème ne se produit plus. Merci. –