Dependency injection 如何在Http处理程序Sitecore中使用Microsoft.Extensions.DependencyInjection?

Dependency injection 如何在Http处理程序Sitecore中使用Microsoft.Extensions.DependencyInjection?,dependency-injection,sitecore8,helix,Dependency Injection,Sitecore8,Helix,我在使用Helix框架的Sitecore 8.2更新4中使用Microsoft扩展依赖项注入,下面是我的代码: public类TestTextHandler:IHttpHandler { 私有只读ITest_测试; 公共TestTextHandler(测试) { _测试=测试; } } 公共接口测试 { } 公共类考试:ITest { } 公共类注册表容器:IServiceConfiguration { public void配置(IServiceCollection serviceCollec

我在使用Helix框架的Sitecore 8.2更新4中使用Microsoft扩展依赖项注入,下面是我的代码:

public类TestTextHandler:IHttpHandler
{
私有只读ITest_测试;
公共TestTextHandler(测试)
{
_测试=测试;
}
}
公共接口测试
{
}
公共类考试:ITest
{
}
公共类注册表容器:IServiceConfiguration
{
public void配置(IServiceCollection serviceCollection)
{
serviceCollection.AddTransient();
}
}
一个修补程序文件:



找不到类型“XX.XX.TestTextHandler”的错误构造函数。

我刚刚尝试了上面的代码(加上IHttpHandler的接口实现),它使用Habitat解决方案工作正常。检查以确保程序集正在/bin文件夹中发布,并且配置正确。(FY:我甚至检查了ShowServicesConfig.aspx,以确保它正在加载,并且它的生命周期是瞬态的。)

您之所以会收到错误,是因为您已将
TestTextHandler
配置为使用具体的
测试对象,而不是继承
ITest
接口的对象

您需要将构造函数声明更改为:
publictestTextHandler(ITest-test)

谢谢,让我检查一下“不为我工作”。如果你能分享你的代码那就太好了。