gpt4 book ai didi

c# - EntityFramework - 是否可以将整个上下文数据库加载到内存中?

转载 作者:太空宇宙 更新时间:2023-11-03 14:21:02 24 4
gpt4 key购买 nike

我有一个小数据库,而且它会一直很小。这是一个 asp.net 4.0 网站。它在表的数量和其中的条目数量方面都很小。也是为了内部管理,很少有用户会用到。

有没有办法在一次调用中加载所有内容?而不是调用 context.Orders.ToList()、context.Customers.ToList() 等。

此外,如果存在这样的选项,它是否也会加载所有实体引用?

我知道这是一个奇怪的要求,但我认为在我的场景中,它在返回数据方面会更有效率。

谢谢,是的

最佳答案

不,没有命令可以简单地将所有内容加载到内存中。您可以从一些实体开始并使用 Include 方法定义预加载,但您不能在没有关系的情况下预加载实体。

此外,整个这种方法都有异味。你为什么要这样做?您提到了 ASP.NET 标记,所以您似乎想在客户端之间共享加载的数据?那将是 very bad idea如果您的应用程序不是只读的。所有并发请求中的一个上下文就像共享“事务”一样。

ObjectContext 只应为单个工作单元提供服务。在大多数情况下,这意味着 Web 应用程序中的单个 HTTP 请求。

关于c# - EntityFramework - 是否可以将整个上下文数据库加载到内存中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5393826/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com