asp.net-mvc-3 - 定义WebActivator.PreApplicationStartMethod类的初始化顺序

标签 asp.net-mvc-3 inversion-of-control webactivator

我有几个WebActivator.PreApplicationStartMethod装饰的类。

一类用于Ninject,另一类用于AwesomeMVC,第三类用于后台任务计划程序。

问题是调度程序类需要利用由IoC容器解决的依赖关系。

我的问题是:

  • 我可以有几个WebActivator.PreApplicationStartMethod类吗?
  • 我可以定义初始化顺序的顺序,以便最重要的IoC首先出现吗?
  • WebActivator.PreApplicationStartMethod静态类实例可以依赖IoC容器来解决其构造函数定义的依赖关系吗?
  • 最佳答案

    如果您知道PreAppStart方法A需要在PreAppStart方法B之后运行,那么唯一的实现方法是在A主体内显式添加对B的调用。

    为了使该策略正确运行,您还应该确保PreAppStart方法实现是独立的,即可以安全地多次调用它们。通常,这可以通过跟踪是否已在静态 bool 变量中调用该方法来实现,如果该值是true,则不执行任何操作。

    关于asp.net-mvc-3 - 定义WebActivator.PreApplicationStartMethod类的初始化顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9041558/

    相关文章:

    c# - 域对象扩展方法中的依赖注入(inject)

    asp.net-mvc-3 - 通过 MVC 3 中的依赖注入(inject)学习控制反转

    powershell - NuGet:可以通过 Powershell 添加一行代码吗?

    c# - Azure负载测试: Spin up multiple instances runtime

    c# - 带有 URL 扩展的单元测试 Controller

    c# - MVC 3 : How to render a view without its layout page when loaded via ajax?

    c# - Ninject 和 MVC3 : Dependency injection to action filters

    asp.net-mvc-3 - Html.Display 不适用于 ViewBag

    linq-to-sql - 使用 IoC、依赖注入(inject)、工作单元的 Linq to SQL 的存储库模式

    asp.net-mvc-3 - 为 MVC3 应用程序配置 Ninject 的正确方法是什么?