修改 刪除站內目錄操作後Session丟失問題

2022-05-29 08:18:08 字數 816 閱讀 5511

在web專案中使用 directory.move(olddir,newdir)修改目錄名稱或使用directory.delete(true)刪除目錄後, 發現session都失效,後來經過試驗發現,如果刪除改變的目錄不屬於當前專案所在虛擬目錄,則session可用,相反則不可用;除錯跟蹤中提示的:session.get_item()……返回null;

後經過研究發現,在虛擬目錄刪除改變目錄會造成session丟失,以至於失效。而session丟失的實質就是:應用程式重起!

這裡有多種解決方案:

1)利用外部程序儲存 session  

2)利用資料庫儲存 session  

3)使用者id放入cookie,若檢測到session為空但cookie存在在重新初始化 session.  

4)將要對其進行操作的目錄移出asp.net程式外

我這裡使用了第一種,操作如下:

1. 首先啟動"asp.net 狀態服務",如果這個服務不啟動,後面的更改不會起作用。

2. 在web.config中修改配置如以下**所示

完成上面兩點,就算是iis重啟動了,只要客戶端的瀏覽器標示沒變化,session就還有效.

3.如果以上設定還是無效的話,需要修改一下登錄檔:

[hkey_local_machine\system\currentcontrolset\services\aspnet_state\parameters]

"allowremoteconnection"=dword:00000001000

注意:如果要在session中儲存物件,則要在類上新增[serializable]屬性,即使該物件可序列化。

MybatisPlus修改 刪除操作

專案中經常會遇到一些資料,每次都使用相同的方式填充,例如記錄的建立時間,更新時間等。我們可以使用mybatis plus的自動填充功能,完成這些欄位的賦值工作 1 資料庫表中新增自動填充字段 在user表中新增datetime型別的新的字段 create time update time 2 實體類...

oracle表空間操作(建立 修改 刪除)

建立表空間 create tablespace tp1 datafile d ora tp1.dbf size 50m 為表空間新增資料檔案 alter tablespace tp1 add datafile d ora tp2.dbf size 60m 刪除表空間的資料檔案 alter table...

oracle的alter新增,修改,刪除操作

新增欄位的語法 alter table tablename add 欄位名 number 2 not null alter table tablename add 欄位名 number 2 欄位名 varchar2 13 修改欄位的語法 alter table tablename modify co...