У меня есть эта проблема, когда у меня есть свойство класса, которое является 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; }
}
Заполнение и сохранение класса в БД
if (planet.Moons == null)
{
planet.Moons = new ArrayList();
planet.Moons.Add(new Moon("MoonOne"));
planet.Moons.Add(new Moon("MoonTwo"));
Database.Store(planet);
}
Пока сервер работает, все работает нормально, список правильный и значения в нем правильные. Остальные свойства класса тоже правильные и прекрасные.
Перезагружаем сервер и список очищается. Хотя остальная часть класса по-прежнему верна, а все остальное в базе данных в порядке, по какой-то причине очищается только список.
Кто-нибудь знает, почему это может происходить?