我的Windows Phone应用程序中有一个SQL CE数据库。我已经决定我需要保护数据库,如here所示。问题是,数据库最初是在没有密码的情况下创建的,因此不加密它。我想将所有数据移到新的加密数据库中。
迁移数据和保留关系的最佳方法是什么?我试图这样做(db是新数据库,上下文是旧的)
db.Groups.InsertAllOnSubmit(context.Groups);
但它会抛出错误
尝试附加或添加非新的实体,可能是从另一个DataContext加载的实体。这不受支持。
我是否必须手动旋转到每个对象,在新数据库中创建它们,然后执行查找以关联实体?
答案 0 :(得分:1)
您应该使用外部工具进行数据库迁移。您可以生成sql脚本来创建数据库结构,然后使用“导入和导出数据”工具将数据复制到新数据库。我不会以编程方式进行。
答案 1 :(得分:1)
尝试使用AttachAll而不是InsertInsertAllOnSubmit:
db.Groups.AttachAll(context.Groups);