2013-12-17 3 views
0

У меня есть объект, как «Библиотека»:Как сделать индекс из списка списков?

public class Library 
{ 
    List Books {get; set} 
} 

Book 
{ 
    string isbn 
} 

Я хочу, чтобы сделать индекс так из данной ISBN я могу найти библиотеку я не могу понять, как сделать карту уменьшить.

ответ

2

Для индексирования isbn не требуется никакого сокращения. Подумайте о сокращении, когда вам нужны агрегаты (сумма, счет, средний, минимальный, максимальный и т. Д.)

На самом деле вам даже не нужно писать индекс самостоятельно. Просто позвольте Raven сделать работу для вас с ее динамическими функциями индекса.

var librariesContainingTheBook = session.Query<Library>() 
           .Where(x=> x.Books.Any(y=> y.isbn == yourIsbn)) 

RavenDB должен быть способен разобрать этот запрос и построить индекс автоматически.

Смежные вопросы