Репо: https://github.com/hoagsie/customsessionprovider
Под MySessionProvider
я создал класс, наследующий от SessionStateStoreProviderAsyncBase
. Однако ни один из методов, принимающих идентификатор сессии, не вызывается, включая
CreateUninitializedItemAsync
GetItemAsync
GetItemExclusiveAsync
ReleaseItemExclusiveAsync
RemoveItemAsync
ResetItemTimeoutAsync
SetAndReleaseItemExclusiveAsync
Это не позволяет мне видеть sessionId и сильно мешает тому, что я могу сделать. Как я могу заставить их ловить и стрелять?
Чтобы было ясно, некоторые другие действительно стреляют, такие как
EndRequestAsync
CreateNewStoreData
Кроме того, я вижу звонки в бэк-магазин в SessionItemCollection
. Это позволяет мне видеть, как устанавливаются и получаются отдельные ключи сеанса, но ни один из них не дает мне доступа к sessionId, что означает, что я не могу осмысленно хранить их в реальном приложении.
Я запустил свое решение с IIS Express и Full. Я также удалил пакет SessionStateModule
nuget и реализовал отдельный поставщик, производный от SessionStateStoreProviderBase
с точно таким же поведением.