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