В настоящее время мое приложение MVC 3 имеет зависимость от статического класса, который инициализируется в Application_Start () следующим образом:
protected void Application_Start()
{
MyDependency.Initialize();
}
С статическим классом, более или менее похожим на следующее:
public static class MyDependency
{
public static void Initialize()
{
// Perform some I/O...
}
}
Эта зависимость используется в классе атрибутов, который сопровождается предупреждением об отсутствии зависимостей во время выполнения (отсюда и вызов инициализации в Application_Start ())
public class MyAttributeClass : ...
{
public MyAttributeClass()
{
MyDependency.DoSomething(); //...
}
}
Окончательнодругие разработчики в нашем магазине должны будут использовать этот API, и я хотел бы посмотреть, есть ли способ избавиться от строки в Application_Start () (дополнительная строка кода в Global.asax, вероятно, будетзабытый шаг)
Например, есть ли способ, которым класс MyDependency может "подключиться" к конвейеру без необходимости редактировать Global.asax?