我有这个问题,我有一个类的属性是一个ArrayList,然后将该类存储在db4o容器中,在重新启动服务器后清除列表。
具有ArrayList属性的类看起来像这样:
public class Planet
{
public string Name { get; set; }
public string Identifier { get; set; }
// Planet has an ArrayList property called Moons.
public ArrayList Moons { get; set; }
}
将类填充并存储到DB
if (planet.Moons == null)
{
planet.Moons = new ArrayList();
planet.Moons.Add(new Moon("MoonOne"));
planet.Moons.Add(new Moon("MoonTwo"));
Database.Store(planet);
}
只要服务器正在运行,一切正常,列表是正确的,其中的值是正确的。班上的其他属性也是正确的。
重新启动服务器并清除列表。虽然类的其余部分仍然正确,并且数据库中的其他所有内容都很好,但只有列表因某种原因被清除。
有没有人知道为什么会发生这种情况?
答案 0 :(得分:0)
Database.Store(行星);
这是商店还是更新?我的意思是,在设置“Moons”成员之前已经从db检索了“planet”对象,或者它是一个新实例化的obj?
您是否尝试使用简单的嵌入式应用程序?