Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 退出应用程序时.mdf文件中的数据丢失_C#_.net_Sql Server 2008 R2_Mdf - Fatal编程技术网

C# 退出应用程序时.mdf文件中的数据丢失

C# 退出应用程序时.mdf文件中的数据丢失,c#,.net,sql-server-2008-r2,mdf,C#,.net,Sql Server 2008 R2,Mdf,最近我在SQL Server 2008 R2数据库上工作。我在应用程序中创建数据库并附加同一数据库的.mdf文件,其中包含一些默认数据。正确运行应用程序默认数据。现在,我在我的应用程序中插入、更新一些数据,它的工作正常。但当我退出应用程序并再次运行应用程序时,最后添加和更新的数据会丢失,但默认数据和前面一样正常。请帮忙。为什么是新的将.mdf文件数据加载到什么类型的对象中?您可能需要在关闭应用程序之前保存该对象中的更改。正如@Henk、@Microtechie提到的,我扫描了我的项目文件夹,发现

最近我在SQL Server 2008 R2数据库上工作。我在应用程序中创建数据库并附加同一数据库的.mdf文件,其中包含一些默认数据。正确运行应用程序默认数据。现在,我在我的应用程序中插入、更新一些数据,它的工作正常。但当我退出应用程序并再次运行应用程序时,最后添加和更新的数据会丢失,但默认数据和前面一样正常。请帮忙。为什么是新的

将.mdf文件数据加载到什么类型的对象中?您可能需要在关闭应用程序之前保存该对象中的更改。

正如@Henk、@Microtechie提到的,我扫描了我的项目文件夹,发现有3个.mdf文件的副本,第一个在项目文件夹中,代码项目([ProjectFolder])位于[ProjectFolder]/bin/debug文件夹中,第二个在[ProjectFolder]中,第三个在[ProjectFolder]中/bin/release文件夹并突然解决了我脑海中的问题。项目文件夹中的多个.mdf文件中没有问题,因为我每次“清理”和“生成”我的解决方案时,.mdf文件的新副本从[ProjectFolder]复制到[ProjectFolder]/bin/debug文件夹中,导致覆盖同一文件夹中的最后一个.mdf文件。因此,每次构建和运行应用程序时,只有默认数据出现,最后添加和更新的数据丢失。
谢谢大家的回复和准确的回答

您是否在关闭之前提交对数据库的更改?请确保您有一个mdf文件,在我看来,您正在插入并更新到其他数据库中。:)@Ehsan,是的,我正在保存每次数据库操作后的更改。如果我在本地计算机上连接到SQL server R2(通过更改App.Config中的连接字符串),它可以正常工作。我想我们需要查看您的代码。我找到了que的答案,并添加了相同的答案。我使用了实体框架(.edmx)。并且每个数据库语句都在'using'store子句下,这意味着using作用域结束数据库连接即将关闭。e、 g
使用(Mystore _store=new Mystore()){//Database operations _store.SaveChanges();}
将mdf文件放置在与项目bin文件夹不同的位置。