wpf linq数据库无法插入

最近做wpf应用程序,遇到一个很奇怪的问题,我用代码往数据库里插入数据成功了,但去vs的服务器资源管理器里查看数据库总是最开始的样子,什么都没有插入进去,然后就检查代码,打日志查看sql语句,发现都没有问题,纠结了一个晚上,今天无意间才发现问题所在。

原因:wpf窗口应用程序调试时会在debug目录下生成一份临时数据库,就跟把数据存在内存里似得,再次调试就会把原来的数据库清掉重新复制一份数据库在debug目录下,但在vs里看的却是最原始的那一个数据库,所以导致总是无法插入数据。

解决办法:在主窗口代码里添加如下代码,便可解决问题

 1 public login()
 2         {
 3             string dataDir = AppDomain.CurrentDomain.BaseDirectory;
 4             if (dataDir.EndsWith(@"inRelease") || dataDir.EndsWith(@"inDebug"))
 5             {
 6                 dataDir = System.IO.Directory.GetParent(dataDir).Parent.Parent.FullName;
 7                 AppDomain.CurrentDomain.SetData("DataDirectory", dataDir);
 8             }
 9             InitializeComponent();
10         }
View Code
原文地址:https://www.cnblogs.com/xzjs/p/3308173.html