Spring.Net хвърля изключение: Заявката не е налична в този контекст

Аз съм съвсем нов в Spring, така че някои решения не са ми ясни
Това е приложение ASP.NET MVC4 / .NET 4.5

Това е текст за изключение:

An exception of type 'System.Configuration.ConfigurationErrorsException' occurred in Spring.Core.dll but was not handled in user code
Additional information: Error creating context 'spring.root': Request is not available in this context

Извеждане на грешка в персонализиран клас на мениджъра на контекста:

    public static IApplicationContext GetApplicationContext()
    {
        if (null == appContext)
        {
            lock (typeof(ContextManager))
            {
                if (null == appContext)
                {
                    appContext = ContextRegistry.GetContext(); <-- throws there
                }
            }
        }
        return appContext;
    }

Много решения, които търсих в Google, ми казват да превключа режим на IIS към интегриран режим. В този режим приложението работи добре, но трябва да отстраня грешки в приложението с IISExpress. И няма никакви идеи

Има моето проследяване на стека за това изключение:

в System.Configuration.BaseConfigurationRecord.EvaluateOne(String[] keys, SectionInput input, Boolean isTrusted, FactoryRecord factoryRecord, SectionRecord sectionRecord, Object parentResult)
в System.Configuration.BaseConfigurationRecord.Evaluate(FactoryRecord factoryRecord, SectionRecord sectionRecord, Object parentResult , Boolean getLkg, Boolean getRuntimeObject, Object& result, Object& resultRuntimeObject)
в System.Configuration.BaseConfigurationRecord.GetSectionRecursive(String configKey, Boolean getLkg, Boolean checkPermission, Boolean getRuntimeObject, Boolean requestIsHere, Object& result, Object& resultRuntimeObject)
в System.Configuration.BaseConfigurationRecord.GetSection(String configKey)
в System.Web.HttpContext.GetSection(String sectionName)
в System.Web.Configuration.HttpConfigurationSystem.GetSection(String sectionName)
в System.Web.Configuration.HttpConfigurationSystem.System.Configuration.Internal.IInternalConfigSystem.GetSection(String configKey)
в System.Configuration.ConfigurationManager.GetSection(String sectionName)
в Spring.Util.ConfigurationUtils. GetSection(String sectionName)
в Spring.Context.Support.ContextRegistry.InitializeContextIfNeeded()
в Spring.Context.Support.ContextRegistry.GetContext()
в HealthDec.Cms.Model.ContextManager. GetApplicationContext() в ~~\Model\ContextManager.cs:ред 46
в HealthDec.Cms.Model.ContextManager.GetObject(Име на низ) в ~~\Model\ContextManager.cs:ред 64
в HealthDec.Cms.WebApp.MvcApplication.Init() в ~~\Applications\WebApp\Global.asax.cs:ред 156
в System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS(IntPtr appContext, HttpContext контекст, MethodInfo[] манипулатори )


person dotFive    schedule 07.08.2014    source източник
comment
Най-вероятно се опитвате да получите достъп до spring.net Context до началото на жизнения цикъл на приложението (различава се между класическия и интегрирания режим). Ако вашето приложение е извлечено от SpringMvcApplication, заменете ConfigureApplicationContext, за да получите достъп до контекста.   -  person Andreas    schedule 19.08.2014
comment
Намерихте ли решение на този проблем? Заседнал съм в затруднение: - Принуден да използвам Integrated Pipeline Mode за поддръжка на OWIN - Режимът обаче не зарежда Request на Application_Start, където зареждам обектите на Spring. Забележка: Трябва да изпълня бизнес логика при стартиране на приложението.   -  person Exegesis    schedule 06.11.2020
comment
@Exegesis не съм сигурен защо трябва да бъде някакъв обект на заявка в частта за инициализация на приложението? Честно казано, не си спомням контекста на ~6-годишна задача, но единственото нещо, което работи за мен, беше отговор, който вече публикувах (така че това всъщност е решение на този проблем)   -  person dotFive    schedule 07.11.2020


Отговори (1)


Solution Explorer -> Изберете MVC проект -> раздел Properties -> Managed Pipeline Mode -> Integrated ‹--> Classic

person dotFive    schedule 08.08.2014
comment
@AMomchilov: това беше едно решение в моя случай. Ще се радвам, ако предоставите нещо по-добро - person dotFive; 27.05.2016
comment
Аз самият все още търся такъв :( - person Alexander; 27.05.2016