单台PC上的SQL Server CE持久性问题

时间:2018-09-07 09:02:55

标签: c# sql-server-ce-4

我有一个运行在数台PC上的小型应用程序已有两年了,并且SQL Server CE 4数据库文件位于共享位置。它已经工作了很长时间了,没有任何问题,但是现在,在一台PC上,存在持久性问题。

这是有问题的代码(这是很旧的代码):

--some JOIN/UPDATE statements
BEGIN
  DECLARE i BIGINT;
  --count lines
  WHILE(lines>0) DO
    --some joins that rebuild a hierarchy
    --count lines again
  END WHILE
END

没有错误消息出现,因此不会引发异常-所有其他PC都可以正常工作(有时在其他PC运行此代码之后,该PC可以保留-但这是不可靠的)

那么什么会引起这种行为呢?我在想代码之外的东西,但我仍然觉得很奇怪,根本没有错误。

有什么想法吗?

编辑1:

根据请求,这是连接字符串:

在app.config中,我有:

try
{
    using (var context = new ClientFlowContainer())
    {
        Calls ct = context.CallsSet.Create();
        ct.ClientId = _clientId;
        if (Code.SelectedItem is Codes codes)
            ct.Code = codes.Id;
        ct.Data = DateTime.Today;
        ct.Result = _msg + Resultado.Text;
        ct.NextCall = checkBox1.Checked ? dateTimePicker1.Value : (DateTime?) null;
        context.CallsSet.Add(ct);
        context.SaveChanges();
    }
}
catch (Exception ex)
{
    while (ex != null)
    {
        MessageBox.Show(ex.Message);
        ex = ex.InnerException;
    }
}

然后用代码执行:

<connectionStrings>
    <add name="ClientFlowContainer" connectionString="metadata=res://*/Data.ClientFlow.csdl|res://*/Data.MyDbFile.ssdl|res://*/Data.MyDbFile.msl;provider=System.Data.SqlServerCe.4.0;provider connection string=&quot;data source=|DataDirectory|\MyDbFile.sdf&quot;" providerName="System.Data.EntityClient" />
</connectionStrings>

0 个答案:

没有答案