我們有一個n層體系結構:n-tier,Linq和WCF
-a WCF服務與數據庫通信並處理所有的業務邏輯。 - 與WCF服務通信的ASP.NET MVC網站。
這裏是數據序列-反序列化從數據庫到一個「吉他」的HTML視圖一個場景:
-Guitar_1通過LINQ產生的類, -Guitar_2的DataContract通過WCF服務暴露,並且由ASP.NET MVC網站使用。 -Guitar_3模型傳遞到視圖
當最終用戶想要檢索一把吉他時,吉他_1被轉換成吉他_2,然後轉換成吉他_3。這真的不是問題,但如果最終用戶請求吉他列表,那麼對於每個吉他(一個循環)重複所有這些過程。
如果我不得不以編程方式處理所有序列化 - 反序列化的東西,我每層只有一個類。它仍然可以通過在Linq類上註釋'DataContract'/'DataMember'在wcf項目上完成,但是如果我刷新我的數據庫模型,所有我的註釋消失(ASP.NET MVC項目中的相同情況,刷新服務引用刪除所有添加的代碼)。
另外,使用這些自動序列化器真的更有成效嗎?編寫串行器 - 解串器花費的時間與註釋類(DataContract/DataMember)和處理Guitar_1類到Guitar_2的轉換時間一樣多...加上性能損失(循環和轉換)...
你們認爲什麼?因爲這個原因,你們有沒有像過去那樣編碼?
UPDATE:如所建議的通過 '作者Abhijit噶當派',I用於局部類消耗WebService時,但是,我發現了一個更好的解決方案使用LINQ2SQL時:POCO類。
正如你所說「如果我刷新我的數據庫模型,所有我的註釋消失」>>>>>>>>>您是否首先使用EntityFramework模型?那麼爲什麼不使用partial class進行註釋呢? –