2011-12-22 6 views
4

私はAyendeのRavenDBのblog post on the multi map featureを読んでこれを実装しようとしました。私はそれが働くことができません。私が持っているものは、基本的にブログ記事の例と同じです:RavenDbでマルチマップ/リダクションは機能しますか?

インデックスを照会すると、値属性には常に値0が与えられます。索引をちょっと手を動かすと、ChildDocumentのマップは決して文書を検索しないように見えます。

これは現在の安定したRavenDBビルド(1.0.573)で動作しますか?それとも間違っているのですか?

答えて

4

FooとBarのフィールドのインデックスの縮小部分が間違っています。

最初のマップ関数では、すべてのマップ関数の出力の構造がマルチマップインデックスで完全に同じでなければならないため、FooとBooをnullに設定しています。 First()の代わりにFirstOrDefault()を使用する必要があります。

Foo = g.Select(x => x.Foo).Where(x => x != null).FirstOrDefault(), 
Bar = g.Select(x => x.Bar).Where(x => x != null).FirstOrDefault(),