Im planning to use the Entities generated by the EF (POCO) in sending data to the client instead of creating DTOs? Is this a good practice? Basically, my EDMX file is on my DAL layer. So the UI will have direct access on my DAL. Thanks.
It depends on how close the client is to your object domain. If it is your client, then maybe - and indeed this is pretty much how ADO.NET Data Services (etc) work - directly exposing your model.
However, if the client is anything else I would suggest a dedicated DTO. In fact, I'd suggest it anyway ;p Otherwise, it gets somewhat complex:
Orders
member... but is that lazily loaded? do we want that?)DataContractSerializer
In most cases, having a separate DTO makes most of these problems just go away