Click here to Skip to main content
15,921,295 members
Home / Discussions / Design and Architecture
   

Design and Architecture

 
GeneralRe: My Entity Framework Design Pin
Kevin Marois2-Jul-18 8:30
professionalKevin Marois2-Jul-18 8:30 
GeneralRe: My Entity Framework Design Pin
Richard Deeming2-Jul-18 9:00
mveRichard Deeming2-Jul-18 9:00 
GeneralRe: My Entity Framework Design Pin
Kevin Marois2-Jul-18 10:15
professionalKevin Marois2-Jul-18 10:15 
GeneralRe: My Entity Framework Design Pin
Kevin Marois4-Jul-18 17:33
professionalKevin Marois4-Jul-18 17:33 
GeneralRe: My Entity Framework Design Pin
Richard Deeming5-Jul-18 1:27
mveRichard Deeming5-Jul-18 1:27 
GeneralRe: My Entity Framework Design Pin
Kevin Marois9-Jul-18 6:17
professionalKevin Marois9-Jul-18 6:17 
GeneralRe: My Entity Framework Design Pin
Kevin Marois9-Jul-18 6:19
professionalKevin Marois9-Jul-18 6:19 
GeneralRe: My Entity Framework Design Pin
Richard Deeming9-Jul-18 8:20
mveRichard Deeming9-Jul-18 8:20 
Your DbContext will be registered as a "scoped" service - only one instance will be created for each request.

The repositories can either be "scoped" or "transient", where a new instance is created each time it's needed. Since they don't store any state other than the context, I don't see any need to make them "scoped".

The same applies to the IBizObject service.

When a request reaches your controller, the DI container will:
  1. Create or retrieve the FalconContext for the current request;
  2. Create a new instance of the FalconContextUnitOfWork and repository classes, passing in the context;
  3. Create a new instance of the BizObject class, passing in the repository and unit-of-work instances;
  4. Create a new instance of your controller class, passing in the BizObject instance;
  5. Invoke the controller action;
  6. Clean up the transient / scoped instances for the request;

Service lifetimes and registration options | Dependency injection in ASP.NET Core | Microsoft Docs[^]



"These people looked deep within my soul and assigned me a number based on the order in which I joined."
- Homer

GeneralRe: My Entity Framework Design Pin
Kevin Marois16-Jul-18 6:28
professionalKevin Marois16-Jul-18 6:28 
GeneralRe: My Entity Framework Design Pin
Richard Deeming16-Jul-18 8:16
mveRichard Deeming16-Jul-18 8:16 
QuestionEntity Framework Question Pin
Kevin Marois29-Jun-18 9:31
professionalKevin Marois29-Jun-18 9:31 
AnswerRe: Entity Framework Question Pin
Richard Deeming29-Jun-18 10:02
mveRichard Deeming29-Jun-18 10:02 
AnswerRe: Entity Framework Question Pin
Gerry Schmitz29-Jun-18 11:01
mveGerry Schmitz29-Jun-18 11:01 
GeneralRe: Entity Framework Question Pin
Kevin Marois29-Jun-18 11:26
professionalKevin Marois29-Jun-18 11:26 
GeneralRe: Entity Framework Question Pin
Gerry Schmitz29-Jun-18 11:59
mveGerry Schmitz29-Jun-18 11:59 
AnswerRe: Entity Framework Question Pin
jschell30-Jun-18 5:35
jschell30-Jun-18 5:35 
AnswerRe: Entity Framework Question Pin
Mycroft Holmes30-Jun-18 13:23
professionalMycroft Holmes30-Jun-18 13:23 
QuestionQuestions About Entity Framework and the Repository Pattern Pin
Kevin Marois29-Jun-18 5:28
professionalKevin Marois29-Jun-18 5:28 
AnswerRe: Questions About Entity Framework and the Repository Pattern Pin
Nathan Minier29-Jun-18 7:34
professionalNathan Minier29-Jun-18 7:34 
GeneralRe: Questions About Entity Framework and the Repository Pattern Pin
Kevin Marois29-Jun-18 7:46
professionalKevin Marois29-Jun-18 7:46 
GeneralRe: Questions About Entity Framework and the Repository Pattern Pin
Nathan Minier29-Jun-18 8:03
professionalNathan Minier29-Jun-18 8:03 
GeneralRe: Questions About Entity Framework and the Repository Pattern Pin
Kevin Marois29-Jun-18 8:27
professionalKevin Marois29-Jun-18 8:27 
AnswerRe: Questions About Entity Framework and the Repository Pattern Pin
Gerry Schmitz29-Jun-18 10:38
mveGerry Schmitz29-Jun-18 10:38 
QuestionMEF based Web API Pin
Mycroft Holmes28-Jun-18 21:12
professionalMycroft Holmes28-Jun-18 21:12 
AnswerRe: MEF based Web API Pin
Nathan Minier29-Jun-18 7:15
professionalNathan Minier29-Jun-18 7:15 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.