I have avoid LINQ for a good couple of years now. probably because I don't know much about it...T-SQL has worked perfectly for me for the last 20 years so why change...anyways. I need to write a new Data Access Layer I thought I'd come intot he 21st century and switch to LINQ.

I have a standard app design:

UI--->Business Rules--->Data Access Layer

If I use LINQ in the DAL how would I return this data to the business rules?
I don't want the Business Rules to have any reference to the LINQ data structure objects.

Can I simple return tables and datasets?

My final goal will be this:

UI--->Business Rules--->WCF Data Access--->Data Access Layer

So however I return the data it must be able to be passed via a WCF service.

Any tips?

Woka