Я реализовал пользовательского ролевого поставщика и настроил его в моем web.config файле как это:
<roleManager enabled="true" defaultProvider="TDRoleProvider" cacheRolesInCookie="true">
<providers>
<clear/>
<add name="TDRoleProvider" type="TDRoleProvider"/>
</providers>
</roleManager>
Я переопределил функцию GetRolesForUser в своем пользовательском ролевом поставщике, и я ступил в нее, и она работает просто великолепно - загружает 60 ролей для пользователя, с которым я тестирую. Однако я заметил, что к GetRolesForUser обращаются каждый запрос, который звонит Пользователю. IsInRole. В других приложениях я записал, это только называет его однажды, затем кэширует результат в cookie. По некоторым причинам кэширование не работает на это приложение. Какие-либо идеи, относительно почему?