c# - Linq To SQL - 如何禁用关联加载?

标签 c# linq-to-sql associations

我有一个具有一对多关联的实体(它引用了其他关联项的集合)。

有时我需要从数据库加载一组这些实体并将它们放在一个列表中,该列表可以将它们保留在内存中一段时间​​。结果我得到了具有所有关联的实体列表。但问题是我需要这些没有关联的实体。

在某些情况下我可以手动禁用加载关联吗?

最佳答案

我不知道禁用它的开关或参数,但您可以通过手动定义来约束结果数据。 因此,如果你有一个表 person,它有一个外键 FamilyId,它指向 family(具有 ID、Name、Comment 列)表,因为 family 可以有一个或多个人,但一个人只能属于一个家庭。 如果您想要所有家庭,但不想指定人员,您可以调用:

var result = datacontext.Families.Select( s => new { ID = s.ID, Name = s.Name, Comment = s.Comment});

结果是仅具有选择表达式中的属性的对象列表。

关于c# - Linq To SQL - 如何禁用关联加载?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12333149/

相关文章:

javascript - Sails.js 中的多个关联

c# - 有偏见的元素生成算法

c# - 如何在 linq to sql 中编写不等于运算符?

c# - 在电子邮件中编码为 UTF-8

c# - DataContext.CreateDatabase() 说文件已经存在 - 但它不存在

c# - LINQ 到 SQL : How to handle ambiguous column names when joining tables?

ruby - 根据rails4中的关联点进行排序

php - 在 CakePHP 中获取关联模型的计数总和

c# - 可以从 xml 返回成员值的类

c# - 如何使用 C# 通过 Selenium 获取元素列表