Last post May 09, 2012 01:16 AM by Kelmen
May 06, 2012 12:49 AM|Fresher 2012|LINK
We need to implement SOA in application.
1. For UI layer (it can be web application , windows application). This will call BLL
2. For BLL - we are planning to implement WCF. This will call DAL
3. For DAL - we are planning to implement class library project which will call stored procedure for database(which can be sql
Also, we want that all the layers should be loosely coupled.
Is it fine.
Also, we donot want to pass dataset to pass the data accross the layers.
Can we implement seprate class library projectDTO.csproj) and mark the classes in project as DataContract. And this project will be
used to pass data accross the layers
It is fine. Any Suggesstion???
May 06, 2012 08:41 PM|wikkard|LINK
Sounds like a nice architecture, with good seperation of layers.
I agree not to pass datasets between layers, they should be serialised to DTOs (data transfer objects) when sending over network. The DTO's are just POCOs.
You might also consider a dependancy injection framework (I have used
http://stw.castleproject.org/Windsor.MainPage.ashx in the past).
May 08, 2012 11:27 PM|Mastan Oli|LINK
My advice that, create 2 new layer called DTO and Domain Objects
Here the data flows goes like
DAL <--> DO <--> BLL/SOA <--> DTO <--> UI
Also as wikkard said, you can implement dependancy injection framework.
All the best!!!
May 09, 2012 01:16 AM|Kelmen|LINK
imo, there's no need to explicit layer for DTO/BO
should use general bo/poco-alike throughout your architecture.
you should only need to perform the bo <-> data domain object at/within data tier layer