Hello,
J'utilise SL3 et les Ria services bêta (VS2008).
J'ai un petit soucis. J'ai pu remonter ce bug sur la génération du domain service où il faut enlever les conditions d'entité détaché pour les Update.
(voir ici http://www.riaservicesblog.net/Blog/...ce-wizard.aspx)
Coté Silverlight, j'ai ce problème:
Les entités de mon domain context ne change pas d'état (EntityState) lors d'une mise à jour des collection d'entité enfant (normal me direz vous...)
Par exemple:
Si je créé un nouvelle entité et que je l'ajoute au domain context, son EntityState aura la valeur "New".
Mais lors d'un modification des propriétés d'une entité existante, l'EntityState passe bien à "Modified".
Par contre, cas à part:
Imaginons que mon model est le suivant:
EntitéA ----- EntitéAB ------- EntitéB
IdA IdAB IdB
... IdA ...
... IdB ...
Imaginons que l'ensemble des données est dans le domain context.
Si j'essai d'ajouter une nouvelle relation AB antre 1 nouvelle entité A et 1 entité B existante je fais:
Le problème est que j'ai un erreur d'insertion en base car il me dit que la relation AB et B n'est pas respecté.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 //J'ajoute ma ère entité EntitéA a = New EntitéA(); MonDomainCOntext.EntitéA.Add(a); //Requête pour récupérer mon entité B déjà existante... EntitéB b = requete linq sur mon context.... //Puis j'ajoute ma relation EntitéAB ab = New EntitéAB(); idA = a //créé ci dessus idB = b // récupéré ci dessus MonDomainContext.EntitéAB.Add(ab); MonDomainContext.SubmitChanges()...
Pour cela j'ajoute à mon code la nouvelle entité ab à la b:
et je fais mon submit après.
Code : Sélectionner tout - Visualiser dans une fenêtre à part b.EntitéAB.Add(ab);
Dans ce cas là ça marche 1 fois sur 10.
En fait le fond du problème, c'est que la relation ne se fait pas entre une nouvelle entité et un déjà existante.
l'Entité crée b à son EntityState qui reste à UnModified...
Je ne sais pas si j'ai été clair...
Comment puis je résoudre ça?
Est ce que ça fait parti d'un bug des Ria bêta ?
Partager