溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Asp.net在ashx文件中如何處理Session問題

發(fā)布時(shí)間:2021-10-12 14:07:52 來源:億速云 閱讀:96 作者:小新 欄目:開發(fā)技術(shù)

這篇文章將為大家詳細(xì)講解有關(guān)Asp.net在ashx文件中如何處理Session問題,小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

做一個(gè)vb.net的登錄實(shí)例,前臺使用Ext中Ajax ,后臺用ashx文件處理登錄過程,并將用戶儲存在Session中總是出現(xiàn)在這個(gè)錯(cuò)誤.  [NullReferenceException: 未將對象引用設(shè)置到對象的實(shí)例。]

從網(wǎng)上查了一下有以下幾種原因:

1、ViewState 對象為Unll。

2、DateSet 空。

3、sql語句或Datebase的原因?qū)е翫ataReader空。

4、聲明字符串變量時(shí)未賦空值就應(yīng)用變量。

5、未用new初始化對象。

6、Session對象為空。

開始以為是 Session對象為空的原因:將代碼修改以下 

if context.Session.isNewSession then

     context.Session("UserName")=username 'username為接受的用戶名

.................

這樣修改了以后,暈!!!!!,還是相同的錯(cuò)誤.再Google吧

輸入:ashx 處理 session   中于搜到了,太不容易,看來搜索也需要很多技巧

原來:在 ashx 中要使用Session ,需要繼承System.Web.SessionState.IRequiresSessionState接口.默認(rèn)的之繼承了IHttpHandler接口

OK    直接看源代碼吧

復(fù)制代碼 代碼如下:


<%@ WebHandler Language="VB" Class="logout" %>

Imports System

Imports System.Web

Imports System.Web.SessionState

Public Class logout : Implements IHttpHandler, IRequiresSessionState

    Public Sub ProcessRequest(ByVal context As HttpContext) Implements IHttpHandler.ProcessRequest

        context.Session.Clear()

        context.Response.Write("{'success':'true'}") 'JSON格式數(shù)據(jù)

    End Sub

    Public ReadOnly Property IsReusable() As Boolean Implements IHttpHandler.IsReusable

        Get

            Return False

        End Get

    End Property

End Class

關(guān)于“Asp.net在ashx文件中如何處理Session問題”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯(cuò),請把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI