服务器的嵌入式和标准版补丁api有什么不同吗?
是否需要以某种方式配置文档存储以启用patch api?
我正在编写一个使用嵌入式乌鸦的测试。代码在标准版本上正常工作,但在测试中它没有。我经常收到补丁结果:DocumentDoesNotExists
。我已经使用调试器进行了检查,文档存在于商店中 - 因此测试不存在问题。
在这里,您可以找到我的问题的重复:https://gist.github.com/pblachut/c2e0e227fa3beb51f4f9403505c292bb
答案 0 :(得分:2)
我已经达到ravendb支持的联系,我已经回答了我的问题。
服务器的嵌入版和普通版之间应该没有区别。问题是我没有显式传递我想要调用批处理命令的数据库。在结果中,我试图在系统数据库中修补文档。
var result = await documentStore.AsyncDatabaseCommands.ForDatabase("testDb).BatchAsync(new[] {command});
我假设数据库名称将从会话中获取(因为我从那里获得了documentStore)。但是应该始终传递数据库的名称。
var documentStore = session.Advanced.DocumentStore;