You can inject it in the driver, controller, etc. Where to inject it depends on what you need to do and how you need to access the data on the views, etc. You may also be better served with a relationship if that makes sense. I am fairly
new to Orchard myself and there is a ton to learn on the framework and it is amazingly flexible. But it is difficult to get your head around everything because it is so flexible. I would suggest taking a step back and reading the documentation
and watching the videos. There are things that you can do in Orchard that surprisingly does not require you to write any code and is pretty powerful like lists and custom content types. You really should start from the very beginning and work your
way up to a module. Also, I downloaded pretty much every module and looked at the source for nearly every module to get an idea on how things work. To start I would recommend looking at these articles:
And watch the videos as the demonstrations help to cement the ideas even if they are not directly related to what you are trying to accomplish:
I could probably just link to the entire documentation section on the orchard site, but those links above are directly related to what you are asking. Other things you are going to need to understand in your module development is parts, fields,
templates, and the placement.info file. Once you get the pattern it is pretty straight forward.