我想做一件简单的事情:获取 RavenDB 服务器上的数据库名称。根据文档(https://ravendb.net/docs/article-page/4.1/csharp/client-api/operations/server-wide/get-database-names)看起来很简单,但是我面临着先有鸡还是先有蛋的问题。
问题的出现是因为我想在事先不知道数据库名称的情况下获取它们。文档中的代码运行良好,但需要与 DocumentStore 建立事件连接。要获得与 DocumentStore 的事件连接,必须选择有效的数据库。否则我无法执行 GetDatabaseNamesOperation。
这让我觉得我错过了一些东西。有没有一种方法可以获取数据库名称而不必至少知道其中一个?
最佳答案
开设商店不需要数据库。以下代码可以正常运行:
using (var store = new DocumentStore
{
Urls = new[] { "http://live-test.ravendb.net" }
})
{
store.Initialize();
var dbs = store.Maintenance.Server.Send(new GetDatabaseNamesOperation(0, 25));
}
我们将 GetDatabaseNamesOperation 发送到 ServerStore,它对于所有数据库都是通用的,并保存通用数据(例如数据库名称)。
关于node.js - 从服务器获取数据库名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57594370/