Обновление Sitecore 8.2, обновление 7 - С поставщиком Solr по умолчанию - маршруты WebApi не работают - PullRequest
0 голосов
/ 26 октября 2018

Я пытаюсь обновить до Sitecore 8.2 обновление 7 с Sitecore 8.1. Мы используем SimpleInjector для внедрения зависимости. Так как мы используем Solr для поиска контента, у меня есть следующее в конвейере инициализации.

<pipelines>
 <initialize> 
   <processor type="Sitecore.ContentSearch.SolrProvider.Pipelines.Loader.InitializeSolrProvider, Sitecore.ContentSearch.SolrProvider"/> 
 </initialize>
</pipelines>

Теперь существующие маршруты WebApi, которые у нас есть, не работают. Они также находятся внутри другого конвейера инициализации, который называется zz.Pipelines.Config

<pipelines>
  <initialize>
    <processor type="Api.Global, Api" />
  </initialize>
</pipelines>

Это файл .cs для Api.Global

using System.Diagnostics.CodeAnalysis;
using System.Web.Http;
using Sitecore.Pipelines;

namespace Api
{
  public class Global
  {
    public void Process(PipelineArgs args)
    {
      GlobalConfiguration.Configure(WebApiConfig.Register);
    }
  }
}

Это ошибка, которую я вижу:

{
«Сообщение»: «Произошла ошибка.»,
"ExceptionMessage": "Произошла ошибка при попытке создать контроллер типа 'ContentItemDataController'. Убедитесь, что контроллер имеет открытый конструктор без параметров.",
«ExceptionType»: «System.InvalidOperationException»,
"StackTrace": "в System.Web.Http.Dispatcher.DefaultHttpControllerActivator.Create (запрос HttpRequestMessage, HttpControllerDescriptor controllerDescriptor, тип controllerType) \ r \ n в System.Web.Http.ControllerRecrollerControllerChlerChttp: n в System.Web.Http.Dispatcher.HttpControllerDispatcher.d__1.MoveNext () ",
«InnerException»: {
«Сообщение»: «Произошла ошибка.»,
"ExceptionMessage": "Тип 'Api.Controllers.ItemApi.ContentItemDataController' не имеет конструктора по умолчанию",
"ExceptionType": "System.ArgumentException",
"StackTrace": "в System.Linq.Expressions.Expression.New (тип type) \ r \ n в System.Web.Http.Internal.TypeActivator.Create [TBase] (тип instanceType) \ r \ n в System.Web .Http.Dispatcher.DefaultHttpControllerActivator.GetInstanceOrActivator (запрос HttpRequestMessage, тип controllerType, Func`1 & activator) \ r \ n в System.Web.Http.Dispatcher.DefaultHttpController * Тип_скрипта } }

Любая помощь приветствуется.

...