В прошлом я совершил ошибку, чтобы перепутать наборы типизированных данных с бизнес-объектами и никогда больше не упаду таким образом.Они удобны и просты в разработке и использовании, но типизированный набор данных не является бизнес-сущностью.
Я думаю, что лучший способ - это правильно использовать классы и интерфейсы, чтобы вы могли иметь общееподходить и специализироваться с производными классами по мере необходимости, в WCF есть концепция DataContract, которая также очень полезна.