ASP.NET Пользовательский RoleProvider, не уважая cacheRolesInCookie = “верный”

Я реализовал пользовательского ролевого поставщика и настроил его в моем web.config файле как это:

<roleManager enabled="true" defaultProvider="TDRoleProvider" cacheRolesInCookie="true">
  <providers>
    <clear/>
    <add name="TDRoleProvider" type="TDRoleProvider"/>
  </providers>
</roleManager>

Я переопределил функцию GetRolesForUser в своем пользовательском ролевом поставщике, и я ступил в нее, и она работает просто великолепно - загружает 60 ролей для пользователя, с которым я тестирую. Однако я заметил, что к GetRolesForUser обращаются каждый запрос, который звонит Пользователю. IsInRole. В других приложениях я записал, это только называет его однажды, затем кэширует результат в cookie. По некоторым причинам кэширование не работает на это приложение. Какие-либо идеи, относительно почему?

6
задан Jack 22 July 2017 в 00:09
поделиться