Я пишу решение, в котором сущности данных передаются клиентам с использованием наборов данных через службу WCF с nHibernate в качестве ORM.
Мой предшественник написал несколько классов переводчиков, преобразующих наборы данных в сущности и наоборот,В большинстве случаев он объявляет возвращаемый объект как параметр для объекта.
Например:
Public Shared Function CreateEntity(ByVal ds As DataSetObject, ByVal entity As EntityObject) As EntityObject
Dim row As ds.EntityObjectRow = ds.EntityObject(0)
entity.Id = row.Id
// Etc.
Return entity
End Function
Хотя я хочу сделать это следующим образом:
Public Shared Function CreateEntity(ByVal ds As DataSetObject) As EntityObject
Dim row As ds.EntityObjectRow = ds.EntityObject(0)
Dim entity As New EntityObject
entity.Id = row.Id
// Etc.
Return entity
End Function
Он больше не в компании, поэтому я не могу спросить его, почему он так поступил.Отсюда и мой вопрос.Есть ли какой-то выигрыш в производительности или отслеживание с помощью nHibernate при использовании первой реализации, а не второй?
Когда в университете мне всегда говорили, что нельзя передавать возвращаемый объект методу, если не было оченьКонкретная причина для этого.
Пожалуйста, совет.:)