如何在使用Entity Framework时排除相关表

Doz*_*zer 0 entity-framework

db.UploadFileSet.Where(f => f.Article.ID == id).ToList();
Run Code Online (Sandbox Code Playgroud)

ef会自动加载文章.但我不需要它!我怎么能阻止它?

我知道我可以这样写:

Select new XXX{Id = xxx ,Name = xxx};
Run Code Online (Sandbox Code Playgroud)

但这很麻烦.

Lad*_*nka 11

上述查询不会加载相关文章.首次访问已Article加载文件集中的属性时,将加载这些文章(这包括调试程序的访问).如果要确保Article从不延迟加载,则必须关闭上下文中的延迟加载 - 您可以通过在上下文配置中设置属性来在代码中执行此操作:

  • ObjectContext API: db.ContextOptions.LazyLoadingEnabled = false;
  • DbContext API: db.Configuration.LazyLoadingEnabled = false;