Я новичок в Sitecore, SoleNet. Я установил и настроил Solr для работы с Sitecore, и я могу видеть результаты. Теперь я использую код.Sitecore MVC Unity Solr issue
Я добавил строку подключения в UnityMVCActivator.cs в Start() Startup.Init ("http://localhost:8983/solr/sitecore_web_index");
В моем контроллере - указатель результативности() var solr = ServiceLocator.Current.GetInstance>();
Я получаю эту ошибку
[InvalidOperationException:. Тип ISolrOperations1 не имеет доступный конструктор] Microsoft.Practices.ObjectBuilder2.DynamicMethodConstructorStrategy.ThrowForNullExistingObject (IBuilderContext контекст) +226 lambda_method (Closure, IBuilderContext) +39 Microsoft.Practices.ObjectBuilder2. <> c__DisplayClass1.b__0 (IBuilderContext контекст) +33 Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp (IBuilderContext контекст) +337 Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp (IBuilderContext контекст) +396 Microsoft.Practices. Unity.UnityContainer.DoBuildUp (тип т, объект, существующий, имя String, IEnumerable1 resolverOverrides) +238
[ResolutionFailedException: Постановление зависимости не удалось, тип = «SolrNet.ISolrOperations`1 [Niddk.Model.SearchResultsViewModel] ", name =" (none) ". Исключение произошло во время: при разрешении.
Исключение: InvalidOperationException - тип ISolrOperations`1 не имеет доступного конструктора.
В момент, за исключением, контейнер был:
Устранение SolrNet.ISolrOperations1 [Niddk.Model.SearchResultsViewModel], (нет)] Microsoft.Practices.Unity.UnityContainer.DoBuildUp (тип т, Object существующий, имя String, IEnumerable1 resolverOverrides) +500 Microsoft.Practices.Unity.UnityContainer.Resolve (тип Т, имя строки, ResolverOverride [] resolverOverrides) +20 Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetInstance (Тип serviceType, String key) +55
[ActivationException: Ошибка активации произошла при попытке получить экземпляр типа ISolrOperations1, ключ ""] Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetInstance (тип ServiceType, String ключ) +156 Microsoft.Practices.ServiceLocation .ServiceLocatorImplBase.GetInstance() +62 Niddk.Web.Controllers.SearchController.Index() в C: \ Users \ ksivanandan \ Source \ Repos \ web \ Niddk \ Niddk.Web \ Controllers \ SearchController.cs: 23 lambda_method (Closure, ControllerBase, Object []) +87 System.Web.Mvc.ReflectedActionDescriptor.Execute (ControllerContext controllerContext, IDictionary2 parameters) +229 System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod (ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary2 ) +35 System.Web.Mvc. <> c__DisplayClass15.b__12() +80 System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter (IActionFilter фильтр, ActionExecutingContext preContext, Func1 продолжение) +453 System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter (IActionFilter фильтр, ActionExecutingContext preContext, Func`1 продолжение) +453 System.Web.Mvc.ControllerActionInvoker.InvokeAction (controllerContext controllerContext, String ActionName) +533
Мои ViewModel
public class SearchResultsViewModel
{
[SolrField("headline_t")]
public string Headline { get; set; }
}
Любая помощь очень ценится.
Спасибо!
Я бы предположил, что образец кода был испорчен в копии/вставке для SO –
Да, это был оригинальный комментарий. Я расширил его, включив в него реальный отклик, предоставленный сопровождающим SolrNet. – xmorera