我正在尝试转换我现有的网站,以使用WCF与我在另一个盒子上的服务进行通信。目前,我使用自动注册来直接连接我的服务。当我尝试使用Windsor的WcfFacility时,我在我试图注册的一个接口上得到了一个ComponentRegistrationException。错误如下,它只发生在一个特定的接口上,所有其他接口都工作正常,并且以相同的方式编码。
Type Demo.IFooService is abstract.
As such, it is not possible to instansiate it as implementation of Demo.IFooService service我有另一个windows窗体应用程序,我转换为使用WCF与相同的服务,这是100%的工作。
我使用以下代码注册WCF服务(在windows和web应用程序中):
Container.Register(Component.For<IFooService>()
.Named("FooService")
.ActAs(new DefaultClientModel
{
EndPoint = WcfEndPoint.BoundTo(new BasicHttpBinding())
.At("http://localhost/services/fooservice.svc")
}
));该接口标记有ServiceContract和OperationContract属性,并且与所有其他接口相同。
我不知道为什么Windsor将它看作是一个抽象类,但却正确地注册了另一个类。
有什么想法吗?
发布于 2009-05-05 12:02:08
我已经解决了这个问题,似乎我以某种方式删除了在web应用程序上注册WCFFacility的代码行,但它仍然在windows应用程序上,这就解释了为什么它在那里工作。我是个笨蛋,它seems...oh很好。
希望这能帮助任何遇到这种异常的人,他们和我一样是个笨蛋:)
不管怎样,谢谢你的帮助。
发布于 2009-05-05 09:31:02
获取最新版本。我相信这个问题已经解决了。
https://stackoverflow.com/questions/819954
复制相似问题