RavenDB Studioでは、69個のCustomVariableGroupドキュメントが表示されます。私のクエリは、そのうちの66だけを返します。いくつかの掘り下げの後、ではない3つのドキュメントが返され、が新しいクラス構造を持つことがわかりました。プロパティが削除されました。私はこれらの3つのCustomVariableGroupドキュメントを保存したので、それらの構造は他の66と異なっています。なぜなら、それらのすべてをクエリすると、古い構造の他の66のドキュメントしか取得できないのです。私はこれを行う場合、私が欠落している3つの文書のいずれかを取得することができ、プロパティが削除されたRavenDBクエリドキュメント
Session.Query<CustomVariableGroup>().Dump(); // returns 66 docs
しかし:
どちらも私のC#のコード、およびLinqPadの私のクエリ、唯一ここで66を返すLinqPadクエリです上記クエリから:
Session.Query<CustomVariableGroup>().Where(x => x.Name == "Derating").Dump();
すべてのドキュメントを1つのクエリで返すにはどうすればよいですか?
**編集:LinqPadクエリのSQLタブのインデックス情報**
(とレイヴンサーバ出力で)、インデックスは次のようになります。
URL:/インデックス/ダイナミック/ CustomVariableGroups?クエリ= &スタート= 0 &のpageSize = 128 &集約=なし
私はそれがダイナミックだと思われるので、レイヴンStudioでそのインデックスが表示されません。
**編集2:このHACKが機能**
私はこれを行う場合、私はすべての69件の文書を入手:
Session.Query<CustomVariableGroup>().Where(x => x.Name != string.Empty).Dump();
私の推測では、レイヴンのみ取得古いインデックスを使用しなければならないということです削除された列がまだ含まれているドキュメント私は何とか新しい/別のインデックスを使用する必要があります...
興味深いことに、これは動作しません。それだけで66を返します。
Session.Query<CustomVariableGroup>().Where(x => x.Id != string.Empty).Dump();
**編集3:このHACKが同様に動作します**
Session.Advanced.LuceneQuery<CustomVariableGroup>("Raven/DocumentsByEntityName").Where("Tag:CustomVariableGroups").Dump();
私はあなた自身のマップ(インデックス)を作って、同じ結果を得ようとします。また、この質問をRavenDB GoogleグループのAyende/teamモニタに投稿して、そのグループを迅速に返信する可能性があります。答えが見つかったらここに戻ってください。あなたが見つけたものを知りたいです...私はまだRavenDBにとって本当に新しい自分です。 – scarpacci
私はインデックスを試しましたが、それでもまだ66のドキュメントしか持っていません。すぐに回答が得られない場合は、Googleグループにお試しください。そして、はい、私はここでも答えを掲示します。ありがとう! –