關於ASP.NET下身份資訊的儲存(三)

來源:互聯網
上載者:User
asp.net 前兩節描述了我對身分識別驗證資訊的儲存的認識,沒有看的哥們請依次看過關於ASP.NET下身份資訊的儲存(二),關於ASP.NET下身份資訊的儲存(一) .

今天我想說一下Server.Transfer,在上兩節裡,我們是靠Server.Transfer方法將儲存的使用者資訊傳遞到下一頁的.但是在實際的應用中我發現應用前兩篇文章的想法的弊端.

Server.Transfer();方法在應用中只能在兩個頁面之間傳遞值,但是當加入第三個頁面的時候卻無法將值順利的儲存並傳遞。

譬如:有頁面A.aspx(為login頁面),B.aspx(資訊匯總頁面),C.aspx(單個資訊頁面)在A頁面中我們執行身分識別驗證並且儲存在this.Login_User屬性裡然後Server.Transfer(B.aspx),則值順利傳遞到B頁面,然後在B頁面中也Server.Transfer(C.aspx);理論上講值應該可以順利傳遞到C頁面,但是我們在C頁面裡通過

B ls=(B) Context.Handler;//讀取頁面值
userinfo=ls.Login_User;//讀取使用者資訊值

方法卻無法填充userinfo變數,為什嗎?

哥們兒,搞了一個上午總算明白了,Context是無法在第三個頁面裡繼續儲存裡面的資訊的,大家不能象用session那樣去使用Context,所以我們在B頁面裡應該再次執行一遍this.Login_User=userinfo;這樣將值再次添加到Context,然後再Server.Transfer();就可以了。

以上是小弟的一點拙見,願意拿出來和大家探討。如有高人有更為深刻的認識



聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.