Наше приложение работает на ASP. net MVC 5, Net Framework 4.6, мы используем пользовательское SQL Состояние сеанса
<sessionState mode="Custom" customProvider="mssql" cookieless="false" timeout="20">
<providers>
<add name="mongo" type="Sitecore.SessionProvider.MongoDB.MongoSessionStateProvider, Sitecore.SessionProvider.MongoDB" sessionType="Standard" connectionStringName="session" pollingInterval="2" compression="true" />
<add name="mssql" type="Sitecore.SessionProvider.Sql.SqlSessionStateProvider, Sitecore.SessionProvider.Sql" sessionType="private" connectionStringName="session" pollingInterval="2" compression="true" />
<add name="redis" type="Sitecore.SessionProvider.Redis.RedisSessionStateProvider, Sitecore.SessionProvider.Redis" applicationName="Application" connectionString="session" pollingInterval="2" compression="true" />
</providers>
</sessionState>
В настоящее время мы работаем над Интеграция провайдера платежей (worldpay), у нас есть трехэтапный процесс присоединения, где мы собираем личные данные, платежные данные, детали создания учетной записи, каждый шаг обновляет информацию в переменной сеанса
При отправке, приложение вызывает платеж API провайдера путем передачи платежных данных и URL-адреса обратного вызова для публикации статуса транзакции. После успешной транзакции мы создадим пользователя в нашем приложении со всеми деталями, сохраненными в сеансе
Проблема:
При возврате к обратному URL-адресу обратного вызова от провайдера платежей моя переменная сеанса с данными пользователя теряется, создается новый идентификатор сеанса
Перед отправкой назад существует 15 переменных сеанса
После обратной передачи есть 3 переменные сеанса
Любой хе ЛП о том, как это можно решить?