HomeDev GuideRecipesAPI Reference
Dev GuideAPI ReferenceUser GuideGitHubNuGetDev CommunityOptimizely AcademySubmit a ticketLog In
Dev Guide

Resolve NuGet dependency conflicts

Describes why package dependencies can create compatibility issues and how to work around those issues in the Project SDK (PackageReference) model.

Package families are groups of Optimizely NuGet packages that relate to each other and release together. They share the same version number and depend strictly on other packages within the same family. For example, the EPiServer.CMS.AspNetCore.HtmlHelpers package and the EPiServer.CMS.Core package are part of the same family, and they depend directly and indirectly on the EPiServer.Framework package.

When Optimizely releases a package family version, release notes and bug fixes are documented with the family name, not individual packages. The feature or fix you need could be in any package in the family, so update them together. Typically, updating one or a few top-level dependencies, such as the EPiServer.CMS package, resolves the rest automatically. If you encounter dependency conflicts, see the sections below.

📘

Note

See also: NuGet package families in CMS.

The following sections show package families as they are named in the release notes and bug list, with the packages that belong to each family.

EPiServer.CMS.Core

These packages are for Optimizely Content Management System (CMS).

  • EPiServer.CMS.AspNetCore
  • EPiServer.CMS.AspNetCore.HtmlHelpers
  • EPiServer.CMS.AspNetCore.Mvc
  • EPiServer.CMS.AspNetCore.Routing
  • EPiServer.CMS.AspNetCore.TagHelpers
  • EPiServer.CMS.Core
  • EPiServer.Framework
  • EPiServer.Framework.AspNetCore
  • EPiServer.Hosting

EPiServer.CMS.UI

These packages are for Optimizely Content Management System (CMS).

  • EPiServer.CMS.UI
  • EPiServer.CMS.UI.Admin
  • EPiServer.CMS.UI.AspNetIdentity
  • EPiServer.CMS.UI.Core
  • EPiServer.CMS.UI.Settings
  • EPiServer.CMS.UI.Sources
  • EPiServer.CMS.UI.VisitorGroups

EPiServer.Commerce

These packages are for Optimizely Commerce Connect.

  • EPiServer.Commerce
  • EPiServer.Commerce.Core
  • EPiServer.Commerce.UI
  • EPiServer.Commerce.UI.Admin
  • EPiServer.Commerce.UI.CustomerService
  • EPiServer.Personaliztion.Commerce
    (This is listed under EPiServer.Commerce release but follows a separate major version cadence.)
  • EPiServer.Tracking.Commerce
    (This is listed under EPiServer.Commerce release but follows a separate major version cadence.)

EPiServer.Find

These packages are for Optimizely Search & Navigation.

  • EPiServer.Find
  • EPiServer.Find.Blocks
  • EPiServer.Find.Cms
  • EPiServer.Find.Cms.AttachmentFilter
  • EPiServer.Find.Framework
  • EPiServer.Find.Personalization
📘

Note

EPiServer.Find.Commerce is released and versioned separately.

EPiServer.ContentDeliveryApi and EPiServer.ContentManagementApi

These packages are for the Optimizely Content Management System (CMS) application programming interface (API).

  • EPiServer.ContentDeliveryApi.Cms
  • EPiServer.ContentDeliveryApi.Commerce
  • EPiServer.ContentDeliveryApi.Core
  • EPiServer.ContentDeliveryApi.Forms
  • EPiServer.ContentDeliveryApi.Search
  • EPiServer.ContentDeliveryApi.Search.Commerce
  • EPiServer.ContentManagementApi