2012-10-12 35 views
0

我對EntityFramework比較陌生,並且被要求探索使用500+表模型與多表模型拆分表的性能比較。我已經讀過,使用多個模型是首選,但爲了測試性能並證明這個概念,我需要能夠創建巨大的模型。我試圖更新.edmx文件,並且只能添加〜275個表。有誰知道配置設置,將允許添加更多的能力?使用500個表創建一個EntityFramework 5模型

回答

0

當使用.edmx文件時,不建議使用那麼多實體。使用Code First方法可以獲得更好的性能(即使您有現有數據庫,仍然可以先使用代碼)。

如果您有很多表格,您還需要預先渲染實體視圖。

http://msdn.microsoft.com/en-us/library/bb896240.aspx

+0

爲什麼會這樣「這是不建議使用使用.edmx文件時,許多實體。您將使用代碼優先的方法獲得更好的性能」? CodeFirst基於ObjectContext API構建,可以從類生成edmx。它如何比ObjectContext更快?確實,視圖生成可能需要很長時間 - 但對於這兩種方法都是如此,因爲視圖生成發生在ObjectContext中。 – Pawel

+0

@Pawel - 很多原因。問題不在於內存模型(它不是edmx),而是xml文件的大小。該XML文件被序列化並反序列化到設計器中,而大型模型使其非常難以使用。 –

+0

所以這不是性能本身,而是我可以同意的設計經驗。您的迴應表明您使用CodeFirst獲得了更好的運行時性能,我認爲這不是事實。只需添加到您的響應 - 爲CodeFirst渲染視圖,您可以使用EF Gallery中的EF Power Tools或T4模板我寫過 - http://blog.3d-logic.com/2012/06/13/entity-framework-codefirst -view代模板上,視覺工作室代碼庫/ – Pawel

相關問題