【发布时间】:2021-02-10 16:58:49
【问题描述】:
我目前正在使用实体框架在 .net core(C#) 中实现一个 Web 应用程序。在做这个项目时,我实际上遇到了很多挑战,但我将从我认为最重要的一个开始。我的问题如下:
-
我没有频繁地从数据库加载数据,而是拥有一组静态对象,它们是数据库中数据的镜像。但是,当我想确保任何更改(即添加/删除/修改对象)实时保存到数据库时,这很乏味且容易出错。有没有什么好的例子或建议可供我参考以改进我的方法?
-
另一件事是某些对象的属性值将根据其他一些对象的属性值动态更改。如果公式所引用的单元格中的值发生更改,则类似于电子表格的单元格的值将自动更改。我还没有解决方案来做到这一点。感谢有人有任何我可以参考的例子。但这会增加另一层复杂性,以便将内存中对象的更改同步到数据库。
目前,我不确定是否有更好的方法。感谢是否有人可以提供帮助。谢谢!
【问题讨论】:
-
对我来说听起来就像你已经建立了一个数据上下文,它在 dbcontext 周围缓存 db 对象,实际上它已经是一个运行良好的数据上下文,可以缓存 db 对象并实现跟踪,也许你应该阅读基础知识的 ef
-
我同意 - 听起来你在设计这个。使用 EF 的本机内置功能读取和写入数据的实际问题是什么?
-
@PatrickBeynio 我试图实现将对象放入内存是因为性能。我将面临的一个简单场景如下:我有 1 个对象 A 实例、100 个对象 B 实例和 1000 个对象 C 实例。在对象 AI 中有一个属性,如果对象 C 的属性值的子集将自动重新计算变化。我预计会有很多繁重的计算,因此我想在内存中进行。关于保存到数据库,如果不是“实时”也没关系,但我需要数据是持久性的,以防服务器崩溃/错误
-
@Nick.McDermaid 嗨,尼克,请参考我上面的评论。谢谢。
标签: asp.net-mvc .net-core entity-framework-core