I think you will find many suggesting this style of pattern. Not just me or Henk DBContext handling
- Yes, Ideally Using statements for DBContext subtypes
- Even better Unit Of Work patterns that are managed with Using, that have a context and dispose the context Just 1 of many UoW examples, this one from Tom Dykstra
- The Unit Of Work Manager should be New each Http request
- The context is NOT thread safe so make sure each thread has its own context.
- Let EF cache things behind the scenes.
- Test Context creation times. after several Http request. Do you still have a concern?
- Expect problems if you store the context in static. any sort of concurrent access will hurt and if you are using parallel AJAX calls, assume 90+% chance of problems if using a static single context.