The Episerver Search & Navigation (formerly Episerver Find) integration builds on a .NET-based client API, adding functionality for automatically indexing objects, and methods for filtering, retrieving, and caching results. This topic describes how to integrate Episerver Search & Navigation with other parts of the Episerver platform.
Integration components including the .NET API are installed as NuGet packages available in the Episerver NuGet feed, see Installing Episerver updates.
The following packages are used for Search & Navigation-specific integrations:
- Episerver.Find.Cms. Integration of Find REST API with Episerver CMS.
- EPiServer.Find. The .NET client API for the Find REST API (installed with EPiServer.Find.Cms).
- EPiServer.Find.Framework. General integration components for the Find REST API (installed with EPiServer.Find.Cms).
- EPiServer.Find.Cms.AttachmentFilter. File type parser for Episerver CMS attachments.
- EPiServer.Commerce.FindSearchProvider. Integration components for Episerver Commerce, see Commerce integration.
- EPiServer.Find.Commerce. Integration components for Episerver Commerce, see Commerce integration.
- EPiServer.Find.Personalization. Integration components for Personalized Search & Navigation.
Reference needed assemblies in your project, and add the standard configuration for the .NET API to web.config.
Note: If you installed Search & Navigation with a sample site through the Episerver Visual Studio extensions, the integration with Episerver CMS is automatically set up.
When working with the general .NET API, you typically create an instance of the IClient class using the Client.CreateFromConfig method. Following the general pattern of Episerver development, the Episerver integration provides a singleton instance in the form of the SearchClient class and its Instance property. The returned instance is a regular IClient, but some modifications are made to it at start up. In other words, when working with Episerver and Episerver Search & Navigation, be sure to use SearchClient.Instance.
Note: Differences between the authentication mechanism of EPiServer.ServiceAPI and EPiServer.Find may lead to the incorrect functioning of user authentication. To avoid these problems, it is recommended to install EPiServer.ServiceAPI in a separate application.
Last updated: Jun 17, 2020