Исходя из this вопроса, я теперь имею следующую структуру:Ссылка против Dependency
Wolfie.Core - содержит бизнес-логику & сущности, также содержит интерфейсы хранилища (например, IUserRepository) Классов, которые должны получить доступ к хранилищу используются впрыск конструктора.
Wolfie.Data - Ссылки Wolfie.Core и имеет UserRepository реализующий IUserRepository
Так что я доволен этим до сих пор. Core ничего не знает о реализации данных и, следовательно, не зависит ни от чего.
Камнем преткновения, который я получаю, находится в моем веб-слое.
Мой веб-проект ссылается на мой основной проект. Затем я могу добавить новый класс Core, скажем, User, но мне нужно передать конкретную реализацию IUserRepository. Поэтому мне нужно обратиться к моему проекту Data в моем веб-проекте, что кажется неправильным. Теперь он также выглядит так: Web зависит от данных, чего не должно быть.
Итак, как я могу ввести класс Core User классом Data с прямым ссылкой на Data?
С нетерпением жду вашей помощи.
Связанные: http://stackoverflow.com/questions/5267525/dal-bll-gui-composition-root-how-to-setup-di-bindings/5270734#5270734 –