TK>Для страницы нужно перекрыть SavePageStateToPersistenceMedium/Load...
TK>А вот собственно пример сохранения ViewState в базу SQL сервера (как получить raw bytes наверное можно разобраться
Я попытался у себя использовать этот код.
Создал таблицу и SPs
CREATE TABLE [dbo].[tblOdusViewState] (
[RequestStamp] [uniqueidentifier] NOT NULL ,
[SessionCookie] [varchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,
[ViewState] [image] NULL
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
CREATE PROCEDURE LoadPageViewState
(
@RequestStamp UniqueIdentifier
)
AS
CREATE PROCEDURE SavePageViewState
(
@SessionCookie varchar(50),
@ViewState image,
@RequestStamp UniqueIdentifier OUTPUT
)
AS
SELECT @RequestStamp = RequestStamp from tblOdusViewState where SessionCookie = @SessionCookie
if @@ROWCOUNT > 0
begin
update tblOdusViewState set ViewState=@ViewState where SessionCookie = @SessionCookie
end
else
begin
insert into tblOdusViewState (SessionCookie, ViewState) values (@SessionCookie, @ViewState)
SELECT @RequestStamp = RequestStamp from tblOdusViewState where SessionCookie = @SessionCookie
end
CREATE PROCEDURE DropSession
(
@SessionCookie VarChar(50)
)
AS
delete from tblOdusViewState where SessionCookie = @SessionCookie
Правильно ли все ?
И каким образом можно теперь этот класс ViewStateModule использовать ?
Я так понял где в Global.asax ? На как ?