0
我正在寫一個解決方案,其中數據實體通過WCF服務使用數據集傳遞給客戶端,nHibernate作爲ORM。作爲nHibernate實體的參數返回對象
我的前任編寫了一些翻譯器類,將數據集轉換爲實體,反之亦然。在大多數情況下,他將返回對象聲明爲對象的參數。
例如:
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使用第一個實現而不是後者的可跟蹤性?
在大學時,我總是被告知不要將返回對象傳遞給方法,除非有非常具體的原因。
請指教。 :)
這也是我的第一個想法,但由於ID始終與數據集一起傳遞。我開始相信我需要對整個業務邏輯進行徹底改革和重新思考。我發現在執行過程中存在一些不一致之處,他有時以單向或雙向的方式做到這一點。它可能有這樣一個歷史性的理由,這種理由不再適用。 – 2010-11-02 12:17:23
缺少更好的答案,並且因爲這是一個好的答案,所以我會將其標記爲已回答。 :) – 2010-11-16 12:19:25