我在两个单独的项目中使用db4o,它们共享相同的类但不是相同的.dll。我正在修复它,以便它们共享相同的.dll但我需要重命名这些类。根据文档,您设置配置并使用重命名打开数据库,并更新所有内容。我试过这个,但当我尝试打开数据库时,项目就会挂起。我在这里遗漏了什么
config.Common.ObjectClass("DllName.Old, DllName")
.Rename("NewDll.New, NewDll");
var db = Db4oEmbedded.OpenFile(config, DBFile);
答案 0 :(得分:0)
这对我来说是正确的,应该有效。当类名和程序集名称正确时,它确实应该工作。该类不是泛型类,对吧?
你没有任何例外,对吗? db4o是挂起还是实际做了一些工作?
编辑:我可以通过重命名类来重现堆栈溢出异常。也许您正在遇到堆栈溢出异常,但是在实际发生之前就取消了它?
无论如何,我在db4o-bugtracker中创建了一个错误条目。
答案 1 :(得分:0)
我成功了以下答案: https://stackoverflow.com/a/1138178/541420
虽然非常错误:(