を配線するので、私は城ウィンザーのためのasp.net MVCのチュートリアルを行って、私の登録は次のようになります。どのようにコントローラの依存
public class HomeController : Controller
{
private IUserService _userService;
public HomeController(IUserService userService)
{
this._userService = userService;
}
}
:
private static IWindsorContainer _container = new WindsorContainer();
private static void BootstrapContainer()
{
_container = new WindsorContainer()
.Install(FromAssembly.This());
var controllerFactory = new WindsorControllerFactory(_container.Kernel);
ControllerBuilder.Current.SetControllerFactory(controllerFactory);
}
protected void Application_End()
{
_container.Dispose();
}
だから私のにHomeControllerに私はこれを持っています
IUserServiceをセットアップするためにこのコントローラーを配線する方法を教えてください。私は物事を配線する必要があるか問題で場合
更新 、私のvs.netのプロジェクトは、以下のとおりです。
web, interfaces, entities, data (nhibernate), services
私はすべてのサービスをautowireすることを望んで、その後、コントローラのすべてのコンポーネントをautowireました。どうやってやるの? – Blankman
@Blankmanこれを行うには、実装なしでIServiceのようなマーカーインターフェイスを作成し、そこからIUserServiceを継承する必要があります。次に、container.Register(Classes.FromThisAssembly()。BasedOn().WithService.FromInterface())を呼び出します。これにより、すべてのIServicesが登録されます。あるいは、インストーラクラスをビルドする必要があります。 http://docs.castleproject.org/Windsor.Installers.ashxおよびhttp://docs.castleproject.org/Windsor.Registering-components-by-conventions.ashx。私は確かに生涯が多分扱われる必要があるので、1つのコールから何も登録しません。 –