我知道TimeSpan是不可改变的。 我有一个包含TimeSpan字段的对象。该字段经常更新。每次我更新db中的对象时,db4o都会更新TimeSpan字段。到目前为止,这么好 但旧的TimeSpan结构仍保留在db中,因此db会增长并增长。 如何防止db4o保存其他?我只需要目前在该领域持有的TimeSpan。
class Test {
TimeSpan _totalRuntime;
void Work() {
DateTime start = DateTime.Now;
_totalRuntime = _totalRuntime.Add(DateTime.Now - start);
}
}
// Open the db
IObjectContainer db = Db4oEmbedded.OpenFile(ConfigDb4O(), _db4OFilename);
public static IEmbeddedConfiguration ConfigDb4O() {
IEmbeddedConfiguration config = Db4oEmbedded.NewConfiguration();
config.Common.Diagnostic.AddListener(new DiagnosticToConsole());
return config;
}
db4o 7.12.132.14217(.NET20)
答案 0 :(得分:2)
正如报告here更新使用“默认类型处理程序”的值类型时,db4o存在一些问题(您可以看到类型处理程序作为负责将对象封送到db4o可以存储的内容的代码段。)< / p>
我们计划在找到时间后立即解决这个问题。同时我看到至少2种可能的解决方法:
PS:您可以使用上面的链接关注此问题的进展。
最佳
阿德