有一個簡單的辦法,迫使LINQ到執行上的外鍵關係的連接,而無需訪問被引用的表中的任意成員?LINQ無延遲加載
舉例來說,如果我有引用TaxBracket
表,是有關係的和LINQ協會在它們之間建立我希望能夠訪問Company.TaxBracket
數據上下文已被釋放後,也不必做一個公司對象var temp = Company.TaxBracket.randomMemberVariableToExecuteQuery
有一個簡單的辦法,迫使LINQ到執行上的外鍵關係的連接,而無需訪問被引用的表中的任意成員?LINQ無延遲加載
舉例來說,如果我有引用TaxBracket
表,是有關係的和LINQ協會在它們之間建立我希望能夠訪問Company.TaxBracket
數據上下文已被釋放後,也不必做一個公司對象var temp = Company.TaxBracket.randomMemberVariableToExecuteQuery
使用DataLoadOptions.LoadWith
。所以,你說,像
using(var context = new MyDataContext()) {
DataLoadOptions dataLoadOptions = new DataLoadOptions();
dataLoadOptions.LoadWith<Company>(c => c.TaxBracket);
context.LoadOptions = dataLoadOptions;
// some query
}
您可以使用DataLoadOptions
DataLoadOptions options = new DataLoadOptions();
options.LoadWith<Company>(c => c.TaxBracket);
using(var context = new DBContext(){LoadOptions = options})
{
//...
}
它`context.LoadOptions`不`context.DataLoadOptions` – 2011-02-15 19:38:29