Как я могу использовать DocumentDatabase.StartBackup() в сочетании с RavenDB EmbeddableDocumentStore?

Я прочитал документ " Резервное копирование и восстановление" на веб-сайте RavenDB и попробовал его в своем коде.

В документе мы имеем:

Инициирование резервного копирования

При работе во встроенном режиме все, что вам нужно, это вызвать метод DocumentDatabase.StartBackup().

Приведенная выше строка кода просто не скомпилируется с ошибкой:

An object reference is required for the non-static field, method, or property
'Raven.Database.DocumentDatabase.StartBackup(string, bool)'

Поэтому я попробовал это просто для проверки:

new DocumentDatabase(_documentStore.Configuration).
                                               StartBackup(@"~\App_Data\Backup", true);

Код компилируется, но когда приложение запускается, я получаю эту ошибку:

Could not open transactional storage: C:\Project\trunk\MyApp\App_Data\Database\Data

Может кто-нибудь поделиться с вами рабочим кодом о том, как сделать полное резервное копирование встроенного онлайн-хранилища документов? Возможно ли это даже без использования сервера RavenDB?

Мой единственный вариант - сделать резервную копию папки базы данных вручную?

1 ответ

Решение

Leniel, вам нужно использовать метод StartBackup на фактическом экземпляре, который вы запускаете. Если вы используете EmbeddableDocumentStore, вам нужно сделать:

 embeddableDocumentStore.DocumentDatabase.StartBackup(...);
Другие вопросы по тегам