2009-07-31 5 views
3

J'ai une base de données Entity-Attribute-Value (EAV). Entité dans ce sens n'a rien à voir avec les entités dans EF mais se réfère simplement à quelque "chose" à propos de laquelle vous stockez des informations. Vous stockez une valeur dans la table Value, qui est associée à un attribut (le nom de l'information) et une entité.Entity Framework - Détacher et réattacher des entités?

Dans le modèle EAV, vous ne stockez pas les valeurs NULL. Pour une combinaison donnée de {Entity, Attribute}, l'absence d'une entrée dans la table Value implique NULL. Pour cette raison, la colonne de données (par exemple son type Int) dans la table de valeurs n'est pas Nullable. C'est une contrainte à laquelle je dois faire face. Je ne peux pas le changer.

Je crée une application WPF et je souhaite que l'entité Value soit liée à une zone de texte. Si, lors de la sauvegarde, la zone de texte est vide, je dois m'assurer que l'entité liée n'est pas incluse dans la sauvegarde (car cela écrira un 0 dans la table, ce qui est incorrect). Si la zone de texte n'est pas vide, il est évident que les données doivent être sauvegardées.

J'expérimentais en détachant et en rattachant l'entité en fonction de la valeur de la zone de texte, mais j'obtiens des erreurs liées aux objets de relation.

Des idées sur comment je peux réaliser ce que j'essaye de faire?

Répondre

2

Lorsque vous fixez un objet, vous devez également attacher la référence aux autres entités que cet objet a ...

Questions connexes