en essayant de me frayer un chemin dans le livre Steve Sandersons MVC - mais j'ai rencontré un mur de briques lors de la création de WindsorControllerFactory. est passé de MVC1 à MVC2, c'est l'erreur que j'obtiens en essayant de compiler le projet:SportStore: WebUI.WindsorControllerFactory.GetControllerInstance (System.Type: aucune méthode appropriée n'a été trouvée pour remplacer
'WebUI.WindsorControllerFactory.GetControllerInstance (System.Type: aucune méthode appropriée pour remplacer le projet.) Toute aide serait appréciée - Je ne peux pas dépasser cela!
Ceci est le code - comme transcrit du livre:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using Castle.Windsor;
using Castle.Windsor.Configuration.Interpreters;
using Castle.Core.Resource;
using System.Reflection;
using Castle.Core;
using Castle.MicroKernel;
namespace WebUI
{
public class WindsorControllerFactory : DefaultControllerFactory
{
WindsorContainer container;
// The constructor:
// 1. Sets up a new IoC container
// 2. Registers all components specified in web.config
// 3. Registers all controller types as components
public WindsorControllerFactory()
{
// Instantiate a container, taking configuration from web.config
container = new WindsorContainer(
new XmlInterpreter(new ConfigResource("castle"))
);
// Also register all the controller types as transient
var controllerTypes = from t in Assembly.GetExecutingAssembly().GetTypes()
where typeof(IController).IsAssignableFrom(t)
select t;
foreach (Type t in controllerTypes)
container.AddComponentWithLifestyle(t.FullName, t, LifestyleType.Transient);
}
// Constructs the controller instance needed to service each request
protected override IController GetControllerInstance(Type controllerType)
{
return (IController)container.Resolve(controllerType);
}
}
}
++++ Cordialement, Martin
Je suis tellement content que SO existe! Merci d'avoir posé cette question! – Roger