【发布时间】:2016-02-12 02:32:11
【问题描述】:
我是 Sitecore、SoleNet 的新手。我已安装并配置 Solr 以与 Sitecore 一起使用,并且能够看到结果。 我现在正在使用代码。
我在 Start() 中将连接字符串添加到 UnityMVCActivator.cs Startup.Init("http://localhost:8983/solr/sitecore_web_index");
在我的控制器中 - Actionresults Index() var solr = ServiceLocator.Current.GetInstance>();
我收到此错误
[InvalidOperationException:类型 IsolrOperations1 没有 可访问的构造函数。] Microsoft.Practices.ObjectBuilder2.DynamicMethodConstructorStrategy.ThrowForNullExistingObject(IBuilderContext 上下文)+226 lambda_method(闭包,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(类型 t, Object existing, String name, IEnumerable1 resolverOverrides) +238
[ResolutionFailedException: 依赖解析失败,输入 =“SolrNet.ISolrOperations`1[Niddk.Model.SearchResultsViewModel]”,名称 =“(无)”。异常发生时:解决时。
异常是:InvalidOperationException - IsolrOperations`1 类型没有可访问的构造函数。
发生异常时,容器为:
解决 SolrNet.IsolrOperations1[Niddk.Model.SearchResultsViewModel],(无)] Microsoft.Practices.Unity.UnityContainer.DoBuildUp(类型 t,对象 现有,字符串名称,IEnumerable1 resolverOverrides) +500 Microsoft.Practices.Unity.UnityContainer.Resolve(类型 t,字符串名称, ResolverOverride[] resolverOverrides) +20 Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetInstance(类型 serviceType, String key) +55
[ActivationException: 尝试获取时发生激活错误 IsolrOperations1 类型的实例,键 ""] Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetInstance(类型 服务类型,字符串键)+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(闭包,ControllerBase,对象[])+87 System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext,IDictionary2 参数)+229 System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext 控制器上下文,动作描述符动作描述符,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
我的视图模型
public class SearchResultsViewModel
{
[SolrField("headline_t")]
public string Headline { get; set; }
}
非常感谢任何帮助。
谢谢!
【问题讨论】:
标签: model-view-controller solr sitecore