После прочтения комментариев и ответов кажется, что создание другого класса - это хорошо, но, сделав его частичным, он напрямую связывает мою бизнес-логику с Entity Framework и сгенерированным кодом POCO. Это вызывает беспокойство, потому что, как EF4 меняется на EF5, а шаблон T4 меняется на шаблон T5, что произойдет с моим кодом? Кроме того, я просто не чувствую себя комфортно, используя частичные классы в качестве обычных классов.
Вместо этого, и кто-то может все же предоставить лучший ответ (пожалуйста, сделайте), я думаю, что создание независимого от фреймворка объекта (не привязанного к EF) лучше. Затем я могу сопоставить его с общим бизнес-объектом. Что-то вроде:
static Customer Map(CustomerPOCO poco)
{
return new Customer
{
CustomerId = poco.CustomerId
...
...
};
}