usercount

EF更新,数据库值变化,前台页面并不变化,刷新也不变化,重新运行程序则变化----开发中遇到的问题(已解决)

首先说一下我遇到这个情况的代码情景,首先上错误代码

UserInfo userInfo = Session["UserInfo"] as UserInfo;

 var attentionTopicInfos = userInfo.TopicInfos.Where(t => t.TopicId > 0);

这段代码所呈现的问题正如题目,数据库值变化,前台页面并不变化,刷新也不变化,重新运行程序则变化。

断点调试----看到无论如何更新,查出来的attentionTopicInfos的内容也没有任何变化。

 

最后想到----userInfo是从Session中取出的,session储存的用户登录信息,内容并不查询更新。

而我们所需的TopicInfos  是导航属性,这个属性中的内容,也在session当中。

 

修改代码

UserInfo userInfo = Session["UserInfo"] as UserInfo;
userInfo = _userInfoService.GetEntitesQueryable(u => u.UserGuidId == userInfo.UserGuidId).First();//重新查询userInfo

var attentionTopicInfos = userInfo.TopicInfos.Where(t => t.TopicId > 0);

 

到此问题成功解决。解决办法虽然简单,但是我相信开发中会经常遇到,而我在处理问题时没有搜到任何相关文章,

所以在此与大家分享。

 

posted @   坦荡  阅读(2032)  评论(0编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
点击右上角即可分享
微信分享提示