2

我使用 Castle.Windsor 作为 IOC。

所以我试图在 HTTPHandler 的构造函数中解析服务类型。我不断收到此错误,“类型的构造函数:未找到“Namespace.type”。 ”我的配置具有以下服务类型条目:IDocumentDirectory

<component id="restricted.content.directory" service="org.myorg.foundations.services.content.IDocumentDirectory, org.myorg.foundations.services" type="org.myorg.foundations.services.content.RestrictedLocalizationDocumentDirectory, org.myorg.foundations.services">
    <parameters>
      <contentDirectory>${content.directory}</contentDirectory>
      <localizations>
        <array>
          <item>en-us</item>
          <item>es-us</item>
        </array>
      </localizations>
    </parameters>
  </component>

  <component id="content.directory" service="org.myorg.foundations.services.content.IDocumentDirectory, org.myorg.foundations.services" type="org.myorg.foundations.services.web.client.WebServiceDocumentDirectory, org.myorg.foundations.services.web.client">
    <parameters>
      <webServiceURL>#{contentDirectoryWebsiteUrl}</webServiceURL>
    </parameters>
  </component>

在我的新处理程序中,构造函数如下所示:

 public HeartBeatHttpHandler(IDocumentDirectory contentDirectory)
    {
        _contentDirectory = contentDirectory;
    }

我从未使用 Castle.Windsor 收到此错误。有人可以解释吗?

谢谢!

4

1 回答 1

4

您不能将依赖项注入托管的 .NET HTTPHandler 代码。实现 IHttpHandler 的对象必须有一个无参数的构造函数

我使用了一个应用程序容器。这不会是我的第一选择。

-缺口

于 2009-11-03T14:52:47.703 回答