SubmitChanges将无效

时间:2013-05-17 01:04:51

标签: c# asp.net-mvc database linq

我一直在寻找解决这个问题的方法太久了,我真的希望这个能够发挥作用。

我正在尝试提交到数据库,但即使整个函数执行也不会发生更改。

在文件的顶部我有这个:

    DBContextDataContext n_db = new DBContextDataContext();
    UserRepository u_rep = new UserRepository();

这是功能(第280行):

    public void FixWinRatio(int gameID)
    {
        //
        IEnumerable<BLGame> games = GetBLGameInfo(gameID);

        foreach (BLGame item in games)
        {
           Stat stats = u_rep.GetUsersStats(item.userID, 2);
            if (item.points >= 6)
            {
                 stats.wins += 1;
            }
            else
            {
                 stats.losses += 1;
            }
            n_db.SubmitChanges();
        }
    }

没有任何事情发生,一切都在执行,价值也会发生变化(stats.wins获得+1或损失,具体取决于积分)

我也试过这个:

            n_db.Stats.Attach(stats, true);
            n_db.SubmitChanges();

没有

感谢你抽出的时间!

1 个答案:

答案 0 :(得分:1)

您的UserRepository需要使用相同的DataContext。由于你没有将它传递给UserRepository ctor,我假设它创建了第二个无法工作的DataContext。