чем заменить Application_Start в MVCTurbine? - PullRequest
0 голосов
/ 14 июля 2010

По-видимому, этот метод больше не вызывается ... Там у нас есть код для настройки AutoMapper и для настройки связывателей моделей.

Я знаю, что есть "новый" способ создания связывателей моделей, но ... разве я не смогу сделать это "по-старому", пока я не осуществлю это?

В частности, у меня осталось две строки от моего старого метода Application_Start (), которые я не смог получить:

        AutoMapperConfiguration.Configure();

        ModelBinders.Binders[typeof (ModuleEditModel)] = new DerivedModelBinder();

Я попытался просто вставить их в конструктор, сразу после вызова: ServiceLocatorManager.SetLocatorProvider (() => new StructureMapServiceLocator ());

И это работает, но .. кажется, как-то не вступает в силу. При запуске приложения ясно, что AutoMapper не удовлетворен, не имеет отображений, которые он должен иметь, и т. Д.

1 Ответ

1 голос
/ 14 июля 2010

Я ответил на этот вопрос на доске обсуждений Turbine на CodePlex . Вот источник для внесения запрашиваемых вами изменений:

public class MvcApplication : TurbineApplication {
    static MvcApplication() {
        // Register the IoC that you want Mvc Turbine to use!
        // Everything else is wired automatically

        // For now, let's use the Unity IoC
        ServiceLocatorManager.SetLocatorProvider(() => new UnityServiceLocator());
    }

    public override void Startup(){
         // Gets called when the application starts up
         // and before all the stuff that Turbine wires up
    }

    public override void Shutdown() {
         // Gets called when the application shuts down
         // and before any cleanup is done by Turbine
    }
}

Надеюсь, это поможет!

...