你的位置:首页 > ASP.net教程

[ASP.net教程]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();//重新查询userInfovar attentionTopicInfos = userInfo.TopicInfos.Where(t => t.TopicId > 0);

 

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

所以在此与大家分享。