Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/289.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
C# 一个查询可搜索多种类型的文档_C#_Ravendb - Fatal编程技术网

C# 一个查询可搜索多种类型的文档

C# 一个查询可搜索多种类型的文档,c#,ravendb,C#,Ravendb,我的数据库中有三种类型的文档。假设他们存储了一些关于汽车的信息。它们是: cars/id/factoryId(一些工厂生产的汽车的一般信息) cars/id/factoryId/parts/partname(汽车中使用的Part1名称的具体信息) cars/id/factoryId/history(一些关于历史的信息) 例如,此文档可能具有如下ID: cars/123/1/零件/零件名称1 cars/123/2/零件/零件名称1 cars/123/1/零件/零件名称2 cars/123/1

我的数据库中有三种类型的文档。假设他们存储了一些关于汽车的信息。它们是:

  • cars/id/factoryId(一些工厂生产的汽车的一般信息)
  • cars/id/factoryId/parts/partname(汽车中使用的Part1名称的具体信息)
  • cars/id/factoryId/history(一些关于历史的信息)
例如,此文档可能具有如下ID:

  • cars/123/1/零件/零件名称1
  • cars/123/2/零件/零件名称1
  • cars/123/1/零件/零件名称2
  • cars/123/1
  • 汽车/123/1/历史
对于给定的id,我想用c#编写一个查询,只查找形式为cars/id/factoryId/parts/partname的文档(在上面的示例中是documents first、second和third)。我能够获得factoryId的所有可能值,并使用foreach创建多个查询。是否可以只写一个查询

这是foreach循环的代码:

foreach (var id in factoryIds)
{
    var collection = session.Advanced.LoadStartingWith<CarPart>(prefix + id + "/parts");
    result.AddRange(collection);
}
foreach(factoryId中的变量id)
{
var collection=session.Advanced.LoadStartingWith(前缀+id+“/parts”);
结果.添加范围(集合);
}

我的数据库版本是3.0,我使用RavenDB.Client包以c代码连接到数据库。

是的,您可以使用以前的方法,但要惰性地这样做。 这意味着只向服务器发送一个请求

见:

哪个数据库,哪个或映射器,哪个…我用数据库和客户信息更新了问题。