検索コンテキストで奇妙な問題があります。 d.Path.StartsWithが存在する場合、クエリから結果が0になります。Sitecore Search APIは文字列フィールド内に何も見つかりません
私は、そのパスのフィールドが完全なパスを含んでいることを確認し、それは正しいです/私はフィールドの魔女がいくつかのsitecoreのパスから始まるが幸運を見つける検索したい。 私はバックエンドでSolrを使用しています。
string path = "/sitecore/blabla"; //just for example
var contextIndex = ContentSearchManager.GetIndex("sitecore_master_index");
using (var context = contextIndex.CreateSearchContext())
{
var results = context.GetQueryable<PackageDateDocument>()
.Where(d => (d.TemplateName == _templatename) && (d.Language == "en") && (d.Path.StartsWith(path)));
return results;
}
クエリに間違いがありますか?
アップデート1:それは/文字 に関連しているように、使用SolrのUI次のクエリは、場合に動作する場合 私のSolrのバージョンが4.4.0 では、/文字を追加
"q": "_fullpath:\\/sitecore\\/content\\/system\\/balabla* && _language: \"en\" && _templatename: \"My Template\"",
PackageDateDocumentクラスはSearchResultItemから継承していますか? –
@SitecoreClimberはいそうです。パブリッククラスPackageDateDocument:SearchResultItem –
ばかげた考えですが、 'string path ="/sitecore/blabla "'で試しましたか? – Gatogordo