我在想如何組織DataContexts的最佳策略。我們工作的典型DB有50到100個表格,通常以第三範式形式存在,並且它們之間有許多關係。我認爲我們有兩種選擇:LINQ to SQL多個DataContext-s
- 將所有表放在一個上下文中。這將確保我們所做的任何事情都將以正確的順序在數據庫中提交。問題在於,LINQ設計人員會對50多張表格造成混亂,我擔心性能可能會受到影響。
- 根據表的邏輯分組創建多個數據上下文。問題在於,會有一些關係的一方在一個環境中,另一方在另一個環境中。我們必須手動處理以正確的順序提交兩個上下文。
有沒有建議的做法來解決這個問題?
更多細節:
我想在LINQ的頂部到SQL創建自己的實體和工作單位。實體將在一個xml模型文件中定義,其中也將指定到LINQ實體的映射。自定義工具將根據模型生成我的實體(POCO)。客戶代碼只與我的實體和我的工作單元互動;從來沒有直接使用DataContext或LINQ實體。但是我不想重複LINQ to SQL提供的所有功能,所以我想使用底層的LINQ DataContext。這意味着我不能在不同的數據上下文中執行兩個訂單,因爲無法將我的POCO訂單與兩個訂單進行映射。
雖然這樣,但是Context2中的訂單無法在Context3中使用....您將以兩個不同的訂單實體結束 – Albert 2008-10-24 14:32:11
如果工作分離爲單位,您絕不會嘗試使用對象來自context3中的context2。 – 2008-10-24 14:32:41