实体框架4 SAVECHANGES方法不保存到数据库



我正在尝试将实体框架4用于我写的小型数据库应用程序,以保留下载文件的记录。运行应用程序时,我在.savechanges()方法之前设置了tabename.add()方法之后的断点。我可以看到保存到实体中的数据;然后,我在调用.savechanges()方法之后将有另一个断点,然后查看数据库以发现没有保存的记录。我发现了很多类似的问题,但是我还没有找到解决我特定问题的解决方案。这是代码:

    public void StartNewDownload(string FileID)
    {
        DateTime startTime = DateTime.Now;
        FilesDBEntities db = new FilesDBEntities();
        int startedID = (from dr in db.tblDownloadResults
                         where dr.Value.Equals("Started")
                         select dr.ResultID).First();
        tblDownloads myDownload = new tblDownloads { FileID = FileID, StartDateTime = startTime, ResultID = startedID };
        db.tblDownloads.Add(myDownload);
        db.SaveChanges();
    }

任何帮助都将不胜感激。

谢谢!

pawel,您向我指导我的方向正确。该实体有数据,但是我正在研究的数据库没有。但是,在阅读了您的评论后,我从Visual Studio和使用Process Monitor运行了该程序,以监视 *.sdf文件的任何操作。这有助于发现在构建解决方案后,它将为bin debug文件夹创建另一个数据库文件。我忘记了数据库构建操作属性被设置为"内容"。

谢谢!

您可以使用SQL Server Profiler查看实体框架是否真正称为数据库。

(SQL Server Express中未包含该工具)

最新更新