私は自分のプロジェクトでLinq To Luceneを実装しようとしていますが、何かを検索しようとすると、いつもEnumeration yielded no results
という結果が得られていて、[IndexContext].[TableProperty]
をデバッグしてWatch
ウィンドウを開くと、Linq to Lucene: "Lucene Termの述語は空の文字列にすることはできません。"
Lucene Termの述語は、 を空の文字列にすることはできません。
Googleで検索してみましたが、明らかに結果はありませんでした。
誰もこのメッセージを以前に遭遇しましたか?それをどうやって修正することができますか?現在、それはLucine.Linq.Extensions
で発見され
[更新]
私は拡張メソッドのいずれかを使用していたときに明らかに問題がある(Between
、Match
、Like
など...)任意のデータを返さないだから。以下の例を見てみましょう:
var db = new MusicRepo_DB_IndexContext(@"C:\MusicRepoDB_index",
new MusicRepo_DBDataContext());
次のクエリでは、結果を返します:db.Artists.Where(a => a.Name == "Camel");
をしかし、この1はしていません:db.Artists.Where(a => a.Search("Camel"));
[更新]
さらにテスト時には、私はMatch
拡張メソッドが実際に結果を返すことを認識しました。他のものと同じように(Search
、Like
)はしません。私はまだこの問題で苦労しています