Как я могу использовать 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(...);