实体框架延迟加载和 ICollection

2023-12-08

假设我有一个名为 Stock 的类,它有一个虚拟的 ICollection 价格,它是一组历史价格。

如果您获取股票并在股票具体化后查询价格,但应用像 mystock.Prices.OrderByDescending(px => px.Date).First() 这样的过滤器,EF 会在内部加载所有价格,然后应用过滤器使用过,因为价格可能是一个很大的集合,我真的希望看到 EF 只加载符合我的条件的价格。基本上在服务器端而不是客户端应用过滤。

是否有可能做到这一点?

Thanks


这是可能的,但这种方法只有在你可以假设的情况下才有效Prices确实是一个EntityCollection而不是其他一些恰好实现的类ICollection。我不确定这在所有受支持的 EF 场景中是否成立。要使用的函数是EntityCollection's CreateSourceQuery功能。

((EntityCollection<Price>)stock.Prices).CreateSourceQuery().OrderByDescending(price => price.Date).First();

如果这对您不起作用,另一种可能性可能是返回上下文,并从那里查询:

(from price in context.Prices
 where price.StockId == stockId
 orderby price.Date descending
 select price).First();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

实体框架延迟加载和 ICollection 的相关文章

  • 实体框架 6 - 使用我的 getHashCode()

    这篇文章需要了解一定的背景知识 请耐心等待 我们有一个使用 EF 的 n 层 WPF 应用程序 我们通过 dbContext 将数据从数据库加载到 POCO 类中 dbContext 被销毁 然后用户可以编辑数据 我们使用 Julie Le
  • 实体框架中 1:1 关系中关联的主体端意味着什么

    public class Foo public string FooId get set public Boo Boo get set public class Boo public string BooId get set public
  • LINQ 按降序排序,底部为空值 [重复]

    这个问题在这里已经有答案了 我有这样的表达 troubletickets db ServiceTickets Include t gt t Company Include t gt t UserProfile troubletickets
  • AssociationSet 中的关系处于“已删除”状态

    我正在尝试在我的网站中创建新帖子 但由于某种原因 EF 抛出以下错误 来自 PostAttributeValue Definition 关联集的关系 处于 已删除 状态 给定多重约束 相应的 PostAttributeValue Defin
  • NotSupportedException:LINQ to Entities 无法识别该方法[重复]

    这个问题在这里已经有答案了 我正在尝试使此查询与 EF 一起使用 但它抛出异常 var c ac Communities OrderBy o gt o Posts Count Skip page limit Take limit Selec
  • 对于相同的数据库对象,实体框架对象引用是否相同

    如果我从不同位置查询 逻辑上 在数据库中 相同的对象 实体框架是否返回相同的对象引用 例如 我查询了名为 Joe Black 的客户 并假设现在我知道数据库中只有一个 Joe Black Customer c select blabla w
  • 使用 DI 将参数传递给 DbContext

    我想向 DBContext 传递一个附加参数 如下所示 string myParam xx string con connenctionstring services AddDbContext
  • 如何获取 EF 中的实体更改增量?

    我只需要获取已更改字段的列表 数据存储区是 ssce 因此没有可用的触发器 EF 是否支持获取列表或构建通用组件 根据上下文的类型和生成的实体 您可以通过多种不同的方式来完成此操作 如果对象继承自 Entity 或 POCO 您可以使用Ob
  • MVC 下拉列表未映射到模型

    我正在尝试使用 EF codefirst 在 MVC 3 中开发应用程序 当我使用 int 属性和约定来设置外键关系时 例如 public class Patient public int ConsultantId get set 然后 我
  • 使用更新的值重新加载实体框架上下文中的对象

    我有一个从数据库中提取的 EF 对象 然后 我通过使用另一个函数调用来更新数据库中的相应行DBContext 在此更新之后 我想使用更新后的内容重新加载对象的内容 但是 EF 上下文似乎缓存了这些内容 这是代码示例 我删除了一些不相关的内容
  • VS 2012 中缺少实体数据模型

    添加新项目时 我在 数据 选项卡下找不到实体数据模型 我查看了几个问题和答案以及有关此问题的信息 但没有一个解决方案有效 我已修复 卸载并重新安装 手动安装 EF Tools 包并尝试卸载所有 VS 相关程序 我还尝试在不同的 NET 框架
  • 抑制实体框架核心中的 SQL 查询日志记录

    我有一个使用实体框架核心的控制台 net core 应用程序 该应用程序使用日志框架写入文件和控制台 serviceProvider new ServiceCollection AddLogging AddDbContext
  • 有没有更好的方法使用 MVC 4 和 Entity Framework 5 添加子记录?

    我正在学习 MVC 并结合实体框架处理其无状态性质 我的问题是 有没有更优雅的方式来处理下面的场景 我有两个 POCO 实体 public class Contest public long ID get set public IColle
  • 将平面集合转换为层次集合的递归方法?

    我已经被这个问题困扰了几天 希望得到一些想法或帮助解决它 我有一个对象集合 public class Hierarchy public Hierarchy string iD string name int level string par
  • 如何让 Entity Framework 6 + Sqlite + 代码优先工作?

    我正在尝试创建一个简单的项目来探索 Entity Framework 6 Code First 与 sqlite db 提供程序如何工作 但是当我完成我的应用程序时 我收到错误 实体框架提供程序类型 System Data SQLite S
  • 如何在实体框架中完全锁定一行

    我正在处理的情况是我们正在处理金钱交易 例如 我有一个用户钱包表 其余额位于该行 UserId Wallet Id Balance 现在 在我们的网站和网络服务中 每次发生特定交易时 我们都需要 检查是否有足够的资金可用于执行该交易 从余额
  • 包管理器控制台中缺少文件错误

    我们的开发团队的一些成员在打开包管理器控制台时开始看到以下错误 它完全阻止我们运行实体框架命令 我们已经检查过并且提到的文件确实存在 GetEvent types ps1xml Diagnostics Format ps1xml Diagn
  • 如何以一种形式发布两个或多个模型?

    我正在为一个项目开发互联网课程计划应用程序 该课程计划是根据以下模型构建的 使用数据库优先方法中的实体框架生成 public partial class Subject public int Id get set public string
  • EF 是否可以自动删除未删除父级的孤立数据?

    对于使用 Code First EF 5 beta 的应用程序 我有 public class ParentObject public int Id get set public virtual List
  • DbContext 和 ObjectContext 有什么区别

    From MSDN 表示工作单元和存储库模式的组合 使您能够查询数据库并将更改分组在一起 然后将这些更改作为一个单元写回存储 DbContext在概念上类似于ObjectContext 我虽然DbContext只处理与数据库的连接以及针对数

随机推荐

  • 如何插入页面跳转并在同一页面内打开选项卡

    我正在尝试插入一个链接 内容为 单击此处查看保修详细信息 该链接将向下滚动页面并打开退货政策选项卡 我已经使用了 iframe 代码 但 eBay 不接受它并且它不起作用 我还可以使用什么其他代码 我想要打开的 退货政策 选项卡位于页面中间
  • Android SAF 获取 SD 卡上特定目录的访问权限

    我仍在寻找 但也许有人面临同样的问题 我正在维护一个应用程序 该应用程序将一些数据存储在两个位置 假设在 sdcard example 和 external memory example 上 在迁移到最新的 Android Api 之前 一
  • 如果在哪里使用 Flutter,我无法使用 firestore 中的 orderBy 查询

    我正在从 Firestore 检索列表 并且需要使用查询来检索特定的 UserID 但同时我还需要按时间戳对该列表进行排序 使用 orderBy 在哪里不可能得到这是我的代码 Container height MediaQuery of c
  • 为什么 Ruby 将 FixNum n 哈希为 2n+1?

    为什么 Ruby 对整数进行哈希处理n to 2 n 1 gt gt 0 1 2 3 each x puts x hash 1 3 5 7 我可以看到 您并不总是需要复杂的哈希值 尤其是对于简单的对象 但为什么采用 双倍加 1 规则而不是像
  • 基于 Web 表单的 Web 应用程序 URL,不带“.aspx”,如 stackoverflow.com

    我想知道是否可以在不显示 Webforms 应用程序页面的 URL 的情况下显示 aspx扩大 例如 http stackoverflow com questions ask代替http stackoverflow com question
  • Internet Explorer 11 不稳定的 CSS3 动画

    请参考这个小提琴 http jsfiddle net eQegA 3 div class spinner div spinner width 100px height 100px border 50px solid blue border
  • 设置ggplot2标签背景颜色

    我有这个条形图 group c A A B B value c 25 75 40 76 day c 1 2 1 2 dat data frame group group value value day day dat ggplot data
  • 是否可以为 iPhone 提供临时构建,而不询问设备 ID?

    是否可以为 iPhone 提供临时构建 而不询问设备 ID 我想将应用程序部署给几个人 但我不想要求设备 ID 来创建配置文件和所有其他内容 那可能吗 如果没有 最简单的方法是什么 简单地说 不 如果您担心从测试人员处获取 UDID 的复杂
  • 是否可以从 Swift 中的 UITextView 元素的光标位置获取索引(String.Index)值?

    我正在寻找拉索引值 String Index 从 UITextView 元素的用户光标位置 我正在使用selectedTextRange方法来获取 UITextRange 值 我如何使用它来检索索引值 您可以获取从文档开头到所选范围开头的选
  • 在 Dynamic Linq 中使用“Single”

    我正在尝试将在 Linq 中工作的 Linq 查询转换为能够在动态 linq 中工作 使用 System Linq Dynamic 因为我希望用户能够形成自己的查询 并且将添加此查询字符串在运行时到其他查询字符串上 我有一个疑问 db in
  • Struts 2 中的 ModuleConfig 和 PluginConfig

    我正在从事 Struts 2 迁移工作 我的 Struts 1 应用程序正在使用ModuleConfig and PlugInConfig类 如何在Struts 2中使用这些类 ModuleConfig and PlugInConfig是S
  • 从 main 调用 pthread_exit 可以吗?

    当我打电话时pthread exit from main 程序永远不会终止 我希望程序能够完成 因为我正在退出程序的唯一线程 但它不起作用 看来挂了 include
  • CSV 新行字符

    我有一个 Excel 模板 用于填写数据并将其导出到 CSV 以填充我网站上的以下页面 http play mink7 com ifocus v4 careers php 当我在 Windows 中导出文件时 我得到了正确的新行字符的格式
  • 瞬态变量继承且子类被序列化

    如果从可序列化类继承瞬态变量 并且如果我更改子类中变量的值 瞬态变量是否仅作为瞬态继承 如果子类反序列化会发生什么 反序列化子类后瞬态变量是否会保持其行为并具有默认值 字段不能被继承 只能被隐藏 如果你有一个transient超类中的字段的
  • 当 classProbs=TRUE 时,在 R 中使用 Caret 的 SVM 会产生不同的结果

    当我尝试使用支持向量机提取预测概率时 我提出了以下问题 SVM 通常分类算法的概率截止值为 0 5 但我需要分析准确性如何随概率截止而变化SVM机器学习算法 I used caret封装在R留一交叉验证 LOOCV 首先 我安装了常规支持向
  • 如何使用 AngularJS 在 ng-init 中传递作用域变量

    我在将从范围声明的变量传递到 ng init 时遇到问题 到目前为止我有这样的事情 scope x 10 div 如何从 ng init 函数内的范围传递 x var 很多人会告诉你不应该这样做 正如这里的文档中提到的 https docs
  • matlab dymola 连接在一段时间后失败

    我有 mat 文件中的实验数据和用 dymola 编写的模型 我使用 dymolaM m 文件将命令从 matlab 发送到 dymola 这样我就可以使用 matlab 来优化模型的参数 Matlab从 mat文件中读取数据 以正确的方式
  • 从 sqlalchemy core 中的函数调用中选择列

    在 postgresql 我有select col1 col2 from my function 我怎样才能在 sqlalchemy 核心中做到这一点 select func my function 将结果作为字符串给出 但我想要一个元组
  • 密码字段默认值

    我怎样才能既使用 HTML 密码输入又设置一个可读的文本默认值 因为密码输入会将字符变成点或星号 我可以用 JavaScript 做到这一点吗 所以 如果我理解正确的话 你希望它读取 密码 或普通字母的任何内容 直到有人点击它 此时它会变成
  • 实体框架延迟加载和 ICollection

    假设我有一个名为 Stock 的类 它有一个虚拟的 ICollection 价格 它是一组历史价格 如果您获取股票并在股票具体化后查询价格 但应用像 mystock Prices OrderByDescending px gt px Dat