I'm developing software (libraries, Web pages, Web API, desktop applications, etc.) using C#, .NET Framework 4.0 and Entity Framework Code First.
To develop this software I'm using Dependency Injection with Ninject, and patterns Generic Repository and Unit of Work.
This is the first time I use those patterns and I thought that using Ninject I will solve the problem of coupling.
Now, I have improved my database and I have changed model. The database has the same functionality that the previous one but with less tables and less columns. To do that I have changed my E.F.'s POCO classes and here comes all of my problems. These problems come because I'm using these POCO classes inside my business logic and if I change them I have to change business logic.
I thought that using Dependency Injection I will isolate data layer from business layer, but it doesn't. If changing my data layer I have to change business layer I'm coupling both.
This always happens or have I done something wrong?