title: DAL/BL design question
body: <p>Am working on a .net 2.0 windows application.
  The data access layer[DAL] executes stored procs and returns datareader/dataset to the business layer[BL].</p>
  
  <p>The BL which refers to DAL dll, iterates through the datareader/dataset, reads columns values, creates business objects and returns it to the UI layer.</p>
  
  <p>Given this, is it ok here that the business layer is referring to columns of a database table?</p>
  
  <p>Is this a good practice wrt layer design?</p>
  
  <p>If I return Business object from the DAL instead of dataset/datareader, then my DAL project will have to refer to BL dll too.So,wont there be a circular reference here?
  Thanks.</p>