Nearly every application needs to manage users, roles, rights, authentications and authorizations. Asp.net Core works well with the default identity framework provided by .net team.
If you are starting a new application, you can start right from the code/model first approach. In most cases you have an existing database with an existing application in that case we will need to use scaffolding to create our models automatically.
Within request pipeline in Asp.net core 1.1, the requests travel through middlewares one by one to reach the Mvc. Interestingly, Mvc has another pipeline architecture to entertain the request called Filter pipeline. Just like middlewares, Mvc filters also entertain request one by one and can return the response if a filter decides not to process the request any further (called short circuiting the response). The filter pipeline runs after Mvc selects the action to be executed by processing the routing data.
How to identify the dependencies? Its really simple. You need to divide your application into smaller possible components. Lets assume the smallest component we are talking about is a class. A class provides the definition of attributes and behaviors, of an object. An object can perform certain responsibilities (behaviors). To perform these responsibilities they may need to initiate other smaller components. Tada! here comes the dependency.