I came across an architecture for a .net application where there are 3 layers
Repository layer (edmx and their classes) ^ | V Domain layer (Model -> Interfaces and their implementation) ^ | V Web layer (Model -> View models)
Communication between the web and the data layer takes place via Interfaces defined in the domain layer (anemic models)
The naming convention used over here is all dependent on table names
TableName.cs (autogenerated files)
The problem with this is that if a column is modified in the table, the classes in repository and domain layers all need re-work.
Also, communication between these layers take place with managers which have been resolved as below, where
Container is static
DBContext is stored in session variables during the first call and removed at the end of the request. The second call will initialize the DBContext with the
Any suggestions on what can be done (with minimal changes) so as to imporve this architecture so that it aligns with DDD.