#asp.net #db4o #database-connectivity
#asp.net #db4o #база данных-подключение
Вопрос:
Я создаю объект db4o (а именно Customer.yap), и если он уже создан, я просто вставляю новые объекты в существующий объект (а именно Customer.yap) .
Для обеих этих операций я просто использую:
IObjectContainer db1 = Db4oEmbedded.OpenFile(Db4oEmbedded.NewConfiguration(),@"C:UsersadminDesktopDb4oObjectFilesComponents.yap");
try
{
db1.Store(comp1);
}
finally
{
db1.Close();
}
Правильно ли я это делаю или есть отдельная команда для проверки существования объекта, а затем вставки значений, или я могу использовать один и тот же код для обеих операций, что означает, что db4o автоматически проверяет, существует ли объект в указанном местоположении, если он существует, он вставляет объекты, в противном случае он создает объект в указанном местоположении, а затем вставляет объект.
Пожалуйста, помогите мне
Заранее благодарю
PS: я делаю это в контексте веб-приложения в asp.net и затем есть эта мысль, которая всегда скрывается в моей голове. разве я не должен использовать удаленное подключение, а не хранить его в реальном физическом местоположении, но я не мог просто понять это, как кто-то создает и хранит объекты в контексте удаленного подключения. я не знаю, какие параметры указать, а именно хост, имя пользователя порта и пароль, и я даже не знаю, как кто-то создает подключение к базе данных, какие инструкции следует написать в программе для подключения к этому удаленному объектному файлу.
Пожалуйста, пожалуйста, помогите мне и направьте меня.
Большое спасибо всем, кто находится в ожидании
Ответ №1:
db4o автоматически обновляет объект вместо его вставки, но есть загвоздка: вам придется оставить свой контейнер объектов открытым. db4o работает с локальным кэшем, который отслеживает сохраненные объекты, но как только вы вызываете close () в контейнере объектов, локальные средства исчезают. Если вы сохраните ранее сохраненный после закрытия () объект в контейнере объектов, вы получите дубликат объекта (db4o считает, что это новый объект). Если вам действительно нужно закрыть контейнер объектов и вы хотите обновить объект, вам придется запросить его в db4o, затем обновить, затем вызвать store (и затем вы можете закрыть ()).
Что касается подключения к удаленному серверу db4o, пожалуйста, смотрите: http://developer.db4o.com/Documentation/Reference/db4o-7.12/java/reference/Content/client-server/networked.htm
Лучший! (удачи!)
Комментарии:
1. я ищу некоторые asp.net ссылка
2. developer.db4o.com/Documentation/Reference/db4o-8.0/net35/…