If the project is not too complex and has limited scope, than datasets are fine. But if you want scalability then you might need to use custom classes and a generation tool which supports them, so MyGeneration might help (or Codesmith). You can understand more about architectural options by referring this book:
http://www.packtpub.com/application-architecture-and-design-for-asp-.net-3.5/book
HTH,
Vivek