【发布时间】:2010-10-22 07:06:22
【问题描述】:
我注释掉了允许从我的 ObjectContext 类的所有 ctor 重载中延迟加载的代码行,但是当我迭代导航属性时,迭代是成功的。为什么?
这是相关的代码。
public MyExpensesEntities() :
base("name=MyExpensesEntities", "MyExpensesEntities")
{
// this.ContextOptions.LazyLoadingEnabled = true;
OnContextCreated();
}
static void Main(string[] args)
{
AddExpenses();
Console.WriteLine("Lazy loading is {0}.",
_context.ContextOptions.LazyLoadingEnabled ?
"enabled": "disabled");
PrintCategorywiseExpenses();
_context.Dispose();
Console.WriteLine("Press any key to exit...");
Console.ReadKey();
}
static void PrintCategorywiseExpenses()
{
foreach (var cateogry in _context.Categories)
{
Console.WriteLine
("Category: {0}\n----------------",
cateogry.CategoryName);
foreach (var e in cateogry.Expenses)
Console.WriteLine
("\tExpense: {0}\tAmount: {1}",
e.Particulars, e.Amount.ToString("C"));
}
Console.WriteLine();
}
【问题讨论】:
标签: c# entity-framework entity-framework-4 lazy-loading