一部の言語のメディアの選択ダイアログ ボックスでアイテムが見つからない


解説

web.configファイルでデフォルトの言語が変更されている場合、「メディアの選択」ダイアログ ボックスで検索すると、次のメッセージが表示されることがあります。

No items are found.

ログには、以下のようなエラーが出力される可能性があります:

Exception: System.InvalidOperationException 
Message: Item must have more than 1 version in the default language (nl-NL) 
Source: Sitecore.ContentSearch 
at Sitecore.ContentSearch.Utilities.LanguageFallbackDataService.EnsureFallbackVersion(Item rootItem) 
at Sitecore.ContentSearch.Utilities.LanguageFallbackDataService.GetDescendantsByTemplateWithFallback(Item rootItem, TemplateID templateId) 
at Sitecore.ContentSearch.Utilities.LanguageFallbackDataService.GetDescendantsByTemplateWithFallback(Item rootItem, String templateId) 
at Sitecore.ContentSearch.Utilities.LinqHelper.CreateQuery[T](IProviderSearchContext context, IEnumerable`1 searchStringModel, Item startLocationItem, IEnumerable`1 additionalContexts) 
at Sitecore.ContentSearch.Utilities.LinqHelper.CreateQuery[T](IProviderSearchContext context, IEnumerable`1 searchStringModel) 
at Sitecore.ItemWebApi.Pipelines.Search.ParseSearchText.Parse(IProviderSearchContext providerSearchContext, String searchText) 
at Sitecore.ItemWebApi.Pipelines.Search.ParseSearchText.Process(SearchArgs args) 
at (Object , Object[] ) 
at Sitecore.Pipelines.CorePipeline.Run(PipelineArgs args) 
at Sitecore.ItemWebApi.Pipelines.Request.Search.RunSearchPipeline(RequestArgs args, String searchText, String languageName, Boolean showHiddenItems) 
at Sitecore.ItemWebApi.Pipelines.Request.Search.Process(RequestArgs args) 
at (Object , Object[] ) 
at Sitecore.Pipelines.CorePipeline.Run(PipelineArgs args) 
at Sitecore.ItemWebApi.Pipelines.HttpRequest.LaunchRequest.Process(HttpRequestArgs arguments)

解決策

この問題を解決するには、デフォルト言語のバージョン、例えばnl-NLを、Masterデータベースの/sitecore/system/Settings/Buckets/Search Typesのアイテムを追加してください。