I want to introduce DI to our application.
In our application, we have some generic parameters that are passed through the entire application, mostly via constructor parameters. For example the parameter region limits all actions to a geographic region. This parameter is gathered from user input at runtime and thereby not known at the composition root.
How should I create classes that are always limited to work on one region?
I know that I could use the factory pattern. In this case I would need to pass the DIC into the factory, which is (as far as I know) an anti-pattern.