i have an domain object at the BAL that should have a corresponding data mapper at the DAL. as known the data mapper class will hold presistance and retrieval methods like Update, Delete, FindById, FindByName etc.
i understand how those DAL methods should be used at BAL, but what about the UI layer, UI layer should not access DAL directly, so does this mean that i will have to add methods with the exact signature to the domain object class at BAL that should just pass the UI call of a certain database access operation to thier DAL counterpart methods? or what should i do to access DAL through UI?
The purpose of BAL is to perform other operations such as validation, logging, event handling as well. Also, if you plan to change the way you are going to persist data, such as using a web service instead of database, using a BAL abstract away that.