J'ai un programme fondé sur le code EF-4.1. L'utilisateur obtient un contexte et peut modifier certaines propriétés. Lorsque l'utilisateur est fait, je fais un rapideProblème ChangeTracker de DbContext
ChangeTracker.Entries().Any(e => e.State != EntityState.Unchanged);
pour déterminer si un SaveChanges()
est nécessaire ou non. Si je fais un appel 'SaveChanges()', les modifications apportées sont conservées dans la base de données.
Cela fonctionne pour certaines propriétés et ne fonctionne pas pour d'autres. Plus précisément, il semble fonctionner avec des types simples (float
s), et avec des hiérarchies de collection (ObservableCollection
s).
Est-ce que je fais quelque chose de mal?
Après quelques tests, j'ai opté pour toujours SaveChanges(). Comme vous le mentionnez, cet appel est bon marché s'il n'y a pas de changement à persister. – Gleno