为什么我无法使用EF 6删除基于本地服务的数据库上的记录?

时间:2017-07-17 05:36:52

标签: c# linq entity-framework-6

我有以下代码从表中删除所有记录。该表位于本地基于服务的数据库中,该数据库将在桌面应用程序上保存临时定价数据。当此代码运行时,它会记录它连接,删除和提交事务。我可以看到它有1500个与行数匹配的删除日志。但是当我在Visual Studio中访问该表时,所有数据仍然存在,就像没有删除任何内容一样。如果我在我的完整SQL服务器实例上运行此代码,我可以按预期删除行。 EF不能与基于本地服务的DB一起使用吗?我的工作是使用SQLCommand / SQLConnection等,这很好用。我在这里错过了什么?

using (var context = new PriceListLocalEntities())
{
    context.Database.Log = Console.Write;            
    context.PRICE_LIST.RemoveRange(context.PRICE_LIST.Where(x => x.PRICE_ID != null));
    context.SaveChanges();
}

1 个答案:

答案 0 :(得分:0)

使用Visual Studio中基于服务的DB,将.mdf文件的副本复制到输出文件夹。实体模型连接到输出版本,而原始ADO.NET连接到项目版本。在同一个应用程序中使用两种类型的ADO.NET进行访问并单独更新它们。这对于相互依赖的操作不起作用。