Я только что начал использовать Windsor для разрешения зависимости. Но я становлюсь ниже ошибки, передавая строковое значение в моем контроллере. Я проверил пару подобных Windsor Post, но не повезло.Невозможно создать компонент, так как он будет иметь удовлетворяющие зависимости. Параметр, который не был предоставлен
public class HomeController : Controller
{
public readonly String _A = string.Empty;
public HomeController(string A)
{
this._A = A;
}
}
Installer
public void Install(IWindsorContainer container, IConfigurationStore store)
{
container.Register(Classes.FromThisAssembly()
.BasedOn<IController>()
.LifestyleTransient());
}
WindsorControllerFactory
public class WindsorControllerFactory : DefaultControllerFactory
{
private readonly IKernel kernel;
public WindsorControllerFactory(IKernel kernel)
{
this.kernel = kernel;
}
public override void ReleaseController(IController controller)
{
kernel.ReleaseComponent(controller);
}
protected override IController GetControllerInstance(RequestContext requestContext, Type controllerType)
{
if (controllerType == null)
{
throw new HttpException(404, string.Format("The controller for path '{0}' could not be found.", requestContext.HttpContext.Request.Path));
}
return (IController)kernel.Resolve(controllerType);
}
}
мне нужно обернуть 'A' внутри класса и разрешить его соответствующий интерфейс делать?