Asp.net MVC spring bootstrapper

时间:2009-05-16 19:44:51

标签: asp.net-mvc spring.net

我正在尝试使用Spring.Net容器中定义的任务(现在的RegisterRoutes和RegisterControllerFactory)创建一个bootstrapper。引导程序代码如下:

    public static void Run()
    {
        IApplicationContext applicationContext = WebApplicationContext.GetRootContext();
        IDictionary bootstrapperTasks = applicationContext.GetObjectsOfType(typeof(IBootstrapperTask));
        foreach (IBootstrapperTask bootstrapperTask in bootstrapperTasks.Values)
            bootstrapperTask.Execute();
    }

问题是,如果我想在Application_Start方法中运行bootstrapper,WebApplicationContext尚不可用 - 可用的最早阶段是Init方法。

但我知道Init方法不是注册路线的好地方(请参阅:http://aspnet.codeplex.com/WorkItem/View.aspx?WorkItemId=3325

是否有任何解决方法或我是否应该手动创建一个引导程序(没有弹簧)?

由于

1 个答案:

答案 0 :(得分:0)

由于我没有使用Spring IOC和MVC(使用Ninject),这可能没什么用,但你可以试试

IApplicationContext ctx = ContextRegistry.GetContext();

并在web.config中注册引导程序对象

http://www.springframework.net/doc-latest/reference/html/objects.html#objects-factory-instantiation