Полное внешнее соединение и объединение?
select
coalesce (r1.users, r2.users) as users,
coalesce (r1.number_of_insert, 0) + coalesce (r2.number_of_insert, 0)
from
result_1 r1
full outer join join result_2 r2 on
r1.users = r2.users
Это предполагает, что ваш результат 1 и 2 наборы данных уже сформированы, как у вас было выше.
Вы используете аутентификацию Форм?
аутентификация Форм использует его собственное значение для тайм-аута (30 минут по умолчанию). Тайм-аут аутентификации форм отправит пользователя в страницу входа в систему с сессией, все еще активной. Это может быть похожим на поведение, которое дает Ваше приложение, когда сессия приводит к таймауту упрощения перепутать один с другим.
<system.web>
<authentication mode="Forms">
<forms timeout="50"/>
</authentication>
<sessionState timeout="60" />
</system.web>
Установка тайм-аута форм к чему-то меньшему чем тайм-аута сессии может дать пользователю окно, в котором можно войти в, не теряя данных сессии.
У Вас есть что-нибудь в machine.config, который мог бы вступать в силу? Установка тайм-аута сессии в web.config должна переопределить любые настройки в IIS или machine.config, однако, если у Вас будет web.config файл где-нибудь в подпапке в Вашем приложении, то та установка переопределит тот в корне Вашего приложения.
кроме того, если я помню правильно, тайм-аут в IIS только влияет на .asp страницы, не .aspx. Вы уверены, что Ваш код сессии в web.config является правильным? Это должно посмотреть что-то как:
<sessionState
mode="InProc"
stateConnectionString="tcpip=127.0.0.1:42424"
stateNetworkTimeout="60"
sqlConnectionString="data source=127.0.0.1;Integrated Security=SSPI"
cookieless="false"
timeout="60"
/>
Это обычно - все, что необходимо сделать...
Вы уверенный, что после 20 минут, причина, что сессия проигрывается, от того, чтобы быть неактивным хотя...
существует много причин относительно того, почему сессия могла бы быть очищена. Вы можете включить регистрацию событий для IIS и можете тогда использовать средство просмотра события для видения оснований, почему сессия была очищена..., Вы могли бы найти, что это по другим причинам, возможно?
можно также читать документация для сообщений о событиях и связанное таблица событий .
Я не знаю о web.config или IIS. Но я полагаю, что от кода C# можно сделать это как
Session.Timeout = 60; // 60 is number of minutes