我有更新用户评分的简单方法:
public void PostScore(int userId, GlobalSettings gs, string name)
{
User user = _usrRepo.GetById(userId);
if (name == "up")
{
user.Rating = user.Rating + gs.ScoreForLike;
}
else if (name == "down")
{
user.Rating = user.Rating - Math.Abs(gs.ScoreForDislike);
}
_ctx.SaveChanges();
}
问题是,用户评级不会更新..我的意思是更改不会保存到数据库中。 有没有办法调试正在进行的操作以及为什么EF4.1不会将数据保存到数据库?
答案 0 :(得分:3)
看起来你的User
对象通过一个存储库(_usrRepo
)使用的是与你正在调用的SaveChanges()
不同的上下文(_ctx
}) - 我敢打赌这是你的问题。