C#不保存更改

时间:2015-04-26 14:02:59

标签: c# sql-server database

我在Visual Studio中有一个带有几个表的.mdf数据库文件。但是当我重新启动程序时,所有的更改都消失了。

这是我的连接字符串:

Data Source=(LocalDB)\\v11.0;AttachDbFilename=|DataDirectory|\\Diepeschrath.mdf;Integrated Security=True;Connect Timeout=30

我也有一个设置文件,但是这些更改也不会保存。

同时:

  • 复制到输出目录:始终复制

我尝试了调试,发布并将所有文件复制到桌面

编辑:

我只使用UPDATE更新代码。

例如:

String cmdString1 = "Update Pferde SET ReithalleHeute=ReithalleMorgen, PaddockHeute=PaddockMorgen, LongierZHeute = LongierZMorgen, ReithalleMorgen=0, PaddockMorgen=0, LongierZMorgen=0";

SqlConnection con = new SqlConnection();
String conString = "Data Source=(LocalDB)\\v11.0;AttachDbFilename=|DataDirectory|\\Diepeschrath.mdf;Integrated Security=True;Connect Timeout=30";
con.ConnectionString = conString;        
con.Open();  
SqlCommand cmd;

cmd = new SqlCommand(cmdString1, con);
cmd.ExecuteNonQuery();

con.close();

当程序运行时,我会看到数据视图中的数据,但是当我重新启动它时,我就像是从不添加任何东西。

2 个答案:

答案 0 :(得分:3)

  

同时:复制到输出目录:始终复制

您所做的更改正在保存,它们只是保存在输出目录的mdf文件中,因为您有"始终复制"设置你覆盖了每个构建保存更改的文件,它看起来好像没有保存。

始终将复制切换为"如果更新则复制"或者不要使用AttachDbFilename而是手动附加sql数据库并将其保存在项目构建目录之外的路径中。

答案 1 :(得分:0)

我的错误是我没有保存.settings,当它重新启动时会覆盖我的数据库。

对于所有拥有.settings并希望如此保存的人:

Properties.Settings.Default.Save();