创建的Sdf在代码首次迁移后被删除
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了创建的Sdf在代码首次迁移后被删除相关的知识,希望对你有一定的参考价值。
我正在使用WPF应用程序中的SQL Server精简版进行代码首次迁移。
我能够使用代码优先生成.SDF
数据库文件并且可以应用迁移但是在用户机器中创建了.SDF
(仅空.SDF
,没有添加表)但是没有应用迁移,几秒钟之后它就是被删除。只有少数用户面临这个问题(我们使用点击一次部署)
我已经创建了一个示例应用程序来首先使用代码生成.SDF
数据库文件,但在该应用程序中也是相同的行为。我也保留了日志,但我们没有任何例外。
以下是我用于应用迁移的代码。
var connectionString = Constants.SqlCEConnectionString;
var providerName = "System.Data.SqlServerCe.4.0";
var configuration = new Configuration();
configuration.TargetDatabase = new DbConnectionInfo(connectionString, providerName);
var migrator = new DbMigrator(configuration);
IEnumerable<string> migrations = migrator.GetPendingMigrations();
if (migrations != null && migrations.Count() > 0)
{
migrator.Update();
}
不应删除.SDF
并应适用迁移
答案
也许用户已启用漫游?我会考虑使用:
"Data Source="C:Users<user-machine-name>AppDataTestTest.sdf;"
以上是关于创建的Sdf在代码首次迁移后被删除的主要内容,如果未能解决你的问题,请参考以下文章
启用 EF 代码首次迁移后 Azure 网站出现内部服务器错误