Ravendb没有';t保存属性Raven/Hilo/logging消息

Ravendb没有';t保存属性Raven/Hilo/logging消息,ravendb,nservicebus,ravendb-studio,Ravendb,Nservicebus,Ravendb Studio,我无法将对象保存到Ravendb。 每次我把这个东西保存到Ravendb, 它只保存在下面 Raven/Hilo/LoggingMessages { “最大”:32 } 我在LoggingMessages类中甚至没有名为Max的属性。 而且,它一直这样做 我在一个使用NserviceBus的项目中使用了这个Ravendb。 我的假设是,NserviceBus使用的Ravendb客户端库与其他Ravendb客户端不同。 因为我可以在其他没有NserviceBus的项目中保存LoggingMessa

我无法将对象保存到Ravendb。 每次我把这个东西保存到Ravendb, 它只保存在下面 Raven/Hilo/LoggingMessages { “最大”:32 } 我在LoggingMessages类中甚至没有名为Max的属性。 而且,它一直这样做

我在一个使用NserviceBus的项目中使用了这个Ravendb。 我的假设是,NserviceBus使用的Ravendb客户端库与其他Ravendb客户端不同。 因为我可以在其他没有NserviceBus的项目中保存LoggingMessage类型的对象

LoggingMessage errormessage = new LoggingMessage(); 
errormessage.MessageBody = "test"; 
errormessage.MessageId = "test"; 

using (var store = new DocumentStore { ConnectionStringName = "RavenDB" } ) 
{ 
    store.Initialize(); 
    using (var session = store.OpenSession()) 
    { 
        session.Store(errormessage); 
        session.SaveChanges(); 
    } 
} 

这就是RavenDB生成ID的方式。这是一个系统文件。别担心

可能发生的情况是,您正在将此文档保存到NServiceBus正在使用的数据库中,但您正在查看RavenDB系统数据库,或者正在将其写入单独的数据库中

在Raven Studio中,检查右上角的“数据库”列表


在您的代码中,您可以在连接字符串中设置数据库名称,或者将其作为
新文档存储
构造函数的参数,或者作为
OpenSession
方法的参数。

根据您编写的代码,我认为没有理由不在数据库中找到您的文档。它的ID应该类似于
LoggingMessages/1
。谢谢Matt。我确实得到了LoggingMessage/35之类的id,但对象本身并没有出现在Ravendb Studio中。如果我使用Raven客户端,这是另一个没有nservicebus的项目。我可以在Ravendb Studio中看到对象()