我想讓Castle Windsor使用WcfFacility創建我的WCF。我遵循這個教程。 http://www.codeproject.com/Articles/426770/Dependency-Injection-in-WCF-using-Castle-Windsor但它似乎不適合我。我收到以下錯誤。Castle Windsor WcfFacility錯誤。忘記註冊組件?
找不到名爲ActionService.ServiceImplementations.ActionWebService的組件,您忘記註冊了嗎?
我的應用程序的結構如下所示。對於Web服務(僅限於SVC文件,而後面的代碼,web.config中和的Global.asax)
二期工程的合同,並實現
一個項目。這是IActionWebService和ActionWebservice駐留的地方。
我有第一個參考後者。
這是我的全球asax。
public class Global : System.Web.HttpApplication
{
IWindsorContainer container;
protected void Application_Start(object sender, EventArgs e)
{
container = new WindsorContainer();
container.AddFacility<WcfFacility>()
.Register(
Component.For<IAuthService>().ImplementedBy<AuthService>(),
Component.For<IUserRepository>().ImplementedBy<UserRepository>(),
Component.For<IActionWebService>().ImplementedBy<ActionWebService>().Named("ActionWebService")
);
}
這是我的svc文件。
<%@ ServiceHost
Language="C#"
Debug="true"
Service="ActionService.ServiceImplementations.ActionWebService"
Factory="Castle.Facilities.WcfIntegration.DefaultServiceHostFactory, Castle.Facilities.WcfIntegration" %>
我已經去通在這裏的其他問題和其他博客,但他們的解決方案沒有得到任何幫助我:(。
任何人都可以指向其中的錯誤可能會發生?
編輯 我連着監視窗口捕獲。在那裏,你可以看到,所有的物體似乎被加載。但它不解決這些問題。
沒關係球員,找到了原因。在我的服務聲明中,我有整個程序集+命名空間+類,並且與global.asax中的命名屬性不匹配......好像我仍然受到土耳其和甜土豆泥的影響... :) –