Melhor localização para configuração / módulos Fluent IOC (atualmente tentando o Ninject)

Estou lutando para encontrar o melhor local para localizar meus "Módulos" de configuração do Ninject (o local onde as ligações de Tipo são especificadas). Espero estar apenas perdendo algum truque óbvio, pois isso está começando a se transformar em um desastre para mim ao usar a configuração fluente (e, portanto, o Ninject):

Em uma pilha simples da Web contendo três projetos separados: Web, BusinessLogic, DataAccess. EU não deseja que a camada da Web precise fazer referência direta à camada DataAccess, mas não vejo uma maneira de contornar isso porque:

Se eu colocar oódulo de configuração @DataAccess na camada DataAccess, Preciso fazer referência à camada DataAccess para acessar o módulo de configuração ao instanciar o Ninject Kernel na camada da Web

Se eu colocar oódulo de configuração @DataAccess na camada da Web, Tenho que fazer referência à camada DataAccess para ter acesso aos tipos que quero vincular

Se eu colocar oódulo de configuração @DataAccess em um projeto de configuração separado, Acabo com problemas de referência circular ao tentar especificar ligações para as camadas da Web e DataAcces

parte do benefício do COI é permitir o acoplamento frouxo, mas, tanto quanto posso ver, o uso do Ninject exigiria que eu adicionasse mais referências diretas ao projeto que tenho atualmente. O que estou perdendo

questionAnswers(4)

yourAnswerToTheQuestion