Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ravendb 在RavenBD中将JSON对象存储为属性的最佳实践?_Ravendb - Fatal编程技术网

Ravendb 在RavenBD中将JSON对象存储为属性的最佳实践?

Ravendb 在RavenBD中将JSON对象存储为属性的最佳实践?,ravendb,Ravendb,我试图将JSON文档(基本上是.Net中的Newtonsoft JObject)存储为类属性 public class Something { public JObject ConfigurationData { get;set; } ... } 基本上,它是以前不知道的任意JSON配置数据,需要通过ravendb索引进行搜索,还需要能够以编程方式遍历它,在它上面使用JSONPath等等。最好不必来回转换为其他内容 我一直在阅读有关动态索引、BlittableJ

我试图将JSON文档(基本上是.Net中的Newtonsoft JObject)存储为类属性

public class Something
{
  public JObject ConfigurationData
  {
    get;set;
   }

    ...
}
基本上,它是以前不知道的任意JSON配置数据,需要通过ravendb索引进行搜索,还需要能够以编程方式遍历它,在它上面使用JSONPath等等。最好不必来回转换为其他内容

我一直在阅读有关动态索引、BlittableJsonReaderObject等的内容,但我似乎找不到上面的简单示例,而且自4.0以来,有些事情似乎发生了变化


如果我理解正确,BlittableJsonReaderObject更适合存储原始json并将其作为对象读取。我是否应该将其存储为JObject?或者有更好的方法吗?

为什么不将
配置数据
json存储为
字符串
? 它将由RavenDb的FTS进行搜索,您也可以在RavenDb索引中的该字段上定义

SUBSCRIBE to
OnBeforeConversionDocument
事件并将作业对象转换为字符串
请参见

JSONPath是我与数据交互的主要方式,如果需要,我希望能够从JObject索引json属性。我的意思是,保存JObject似乎有效,只是不确定它是否是最好的主意是的,您可以使用JObject,我认为字典也可以在这里工作,有一个测试使用JObject作为文档中的字段: