Terrasoft.Web.Http.Abstractions.HttpContext.Current == null
Добрый день, коллеги!
В бизнес-процессе, который является подпроцессом другого процесса, пытаюсь получить базовый адрес приложения:
string baseUrl = Terrasoft.Web.Common.WebUtilities.GetBaseApplicationUrl(Terrasoft.Web.Http.Abstractions.HttpContext.Current.Request)
, но по непонятным мне причинам
Terrasoft.Web.Http.Abstractions.HttpContext.Current == null
Имеется одно наблюдение, если процесс вызвать из другого родительского процесса, то контекст имеется. Складывается впечатление что по каким то причинам контекст пропадает.
Подскажите, пожалуйста, кто сталкивался с такой проблемой и в чем может быть дело.
Спасибо!
Нравится
Руслан, добрый день!
Не совсем понятно как именно вы вызываете процесс, в котором возникает ошибка? Судя по вашим словам, если вызвать его в рамках родительского процесса, то ошибка не возникает.
Дима Вовченко,
БП в котором возникает ошибка вызывается в виде подпроцесса другого процесса. Замечено что если подпроцесс поменять, то контекст имеется, если поменять родительский, а подпроцесс оставить исходный, то контекст так же имеется. Но когда вызываются два исходных процесса, то контекс пропадает, к тому же до вызова подпроцесса в скрипт таске он все еще доступен, а в подпроцессе уже нет.
Руслан, скорее всего процесс фоновый из-за чего выполняется не в том контексте из которого был запущен и, как следствие, у него нет текущего HttpContext. Если так, то необходимо сделать его не фоновым.