0
votes

I want to asp.net mvc project using n-tier architecture. I have Confused in that issue;

I have 4 tiers that are BLL, DAL,Entities and WebUI. WebUI tier is a asp.net mvc project. I added data model into entities tier. In DAL, I create some classes about crud opparations using entity framework. Finally I serve this classes as repositories on BLL. BLL knows DAL and entities tiers, DAL knows entites tier and WebUI is only knows BLL. In WebUI, I can access repositories where is into BLL. But this repositories' return values are entity classes. I have to give a reference from entities to WebUI tier. I don't want that WebUI accesses databese directly. It should access database using repositories inside BLL.

What should I do? I want to do right thing. Is anything wrong my architecture?

Thanks for helping answers.

1

1 Answers

3
votes

You can have another project that has only models for BLLEntities.

BLL will always have to map BLLEntities to DALEntities and DALEntities to BLLEnttiies.

You can use AutoMapper for that.

Any Layer above BLL should deal with BLL entities and not with DALEntities.