DataContext 数据在F5刷新频繁,会出现数据读取错误

Posted 那就让我这样吧

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DataContext 数据在F5刷新频繁,会出现数据读取错误相关的知识,希望对你有一定的参考价值。

DataContext 数据在F5刷新频繁,会出现数据读取错误

DataContext是 Linq to sql数据模型的底层数据库对象
所有LInq数据表对象都是由它派生的, 只要建立一个数据库操作,就建立一个datacontext
当然,可以用静态的Datacontext,但不推荐,
所以datacontext对象在频繁调用时,会出现数据错误问题,

在使用datacentext对象时候,它会生成数据缓存,也就是为了提高数据读取速度,它会将数据库对象进行缓存,或者返回IQueryable结果集,使数据查询结果持续到需要select的时候,

解决方法:
建立一个数据实体对象,它是与Linq数据表相同的类型,比如 Custoomer表
解决方法是: db.Customer.select(c=>new Cuseromer{}),这样就解决了数据错误的问题,
原理是:不是用dacontext缓存中读数据,而是从非DBContext对象中,即内存某个实体读取

 

以上是关于DataContext 数据在F5刷新频繁,会出现数据读取错误的主要内容,如果未能解决你的问题,请参考以下文章

如果用户按 F5 或在 asp.net 中刷新,如何防止数据发送?

更改 F5 按钮的行为

F5,Ctrl + F5和单击刷新按钮之间的区别?

F5(刷新)作为提交

vue 中刷新路由几种方法

f5和CTRL+f5刷新页面的区别