我想爲我的模型/數據訪問使用實體框架,並運行速度問題,希望有人可以協助?實體框架 - 對象屬性
我一直在做的是使用EF圖和默認的代碼生成器來生成部分類,描述將要持久化的任何東西。然後我有方法和非持久屬性的部分類。這些可能是簡單的事情,例如全名作爲連接的姓/名,或者從相關實體派生,例如總庫存作爲庫存位置數量集合的總和。
訪問相關實體的任何方法都可以工作,但似乎很慢。這裏有一個特別的慢中的一個例子,它需要大約6-7秒:參與實體
簡單描述:
供應商 - >提供了許多SupplierLines,每個人都有成本價 SupplierLine - >細分StockLine StockLine - >有很多地點,每個地點都有數量
所以我想添加一個方法來從供應商那裏獲得總庫存價值,即mySupplier.StockValue()這顯然應該是總數的成本價格×每個供應商行及其股票行的總量。
我在供應商完成這是一個功能:
Public Function StockValue() As Decimal
Return SupplierLines.
Sum(Function(sul) sul.LastPrice * sul.StockLines.Sum(Function(skl) skl.Locations.Sum(Function(l) l.Quantity)))
End Function
其中給出正確的結果,但需要永遠這樣做。
有關如何獲得更好結果的任何想法?
- 我要保持我的模型類持久性的無知
- 我希望把我所有的邏輯編譯檢查
- 我想一切使用假數據源
- 我是輕鬆的單位可測試並不是真的要預先加載這些信息,因爲它並不總是需要的
您是否嘗試使用探查器來查看SQL服務器上正在執行的查詢實體框架? – 2011-03-18 18:19:57