Skip to content

Conversation

@tmol
Copy link

@tmol tmol commented Nov 26, 2014

Hi guys,

I am working on an enterprise project where the main entity is very complex, quite few OwnedCollections in other OwnedCollections etc.The first update takes around 10 second using GraphDiff because of loading the entity in the GraphDiffer.Merge method. After the query compilation, the query is cached by EF but only for that specific entity with that specific key, if another entity is updated, the first update takes again 10 seconds.

I extended DbContextExtensions with another method where the already loaded entity can be provided, this way the LoadEntity is skipped and only the Merge happens:

public static T UpdateGraph(this DbContext context, T entity, T persisted, Expression<Func<IUpdateConfiguration, object>> mapping) where T : class

If you will accept the pull request, I will create the necessary unit tests and then notify you for merge.

I think that too many parameters are passed around in the DbContextExtensions UpdateGraph methods overloads, maybe a parameter class would be helpful there.

Cheers,

Tibi

@ghost ghost added the enhancement label Jul 22, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Development

Successfully merging this pull request may close these issues.

1 participant