我正在開發一個帶有ASP.NET的Web服務,不是.asmx或WCF,它是自定義的,所以我正在使用Http類(上下文,請求,響應等)。會話被禁用。我正在處理我自己的處理程序和模塊。在ASP.NET中運行連接時保留一個對象
我想保持一個對象活着並且在連接存活的時候可以訪問。我的意思是,一個請求進入,我給它分配一個DbCommand,並且該連接將使用該命令,只要該連接結束,該對象應該被丟棄。我認爲,我可以將它添加到我的IPrincipal實現,然後當連接在模塊中進行身份驗證並且用戶檢索到時,我可以將該DbCommand添加到IPrincipal,以便我可以從任何地方想要在代碼中,並在模塊EndRequest事件後,我可以處置它,但我不知道是否有更好的方法來做到這一點。
您認爲如何?
歡呼聲
這不是WCF。客戶端連接一個簡單的WebRequest。我想避免的是爲此保留一個集合,因爲那樣我必須同步訪問並添加/刪除。例如,我只想將對象粘貼到HttpConext或HttpRequest,但我不知道在哪裏。乾杯。 – vtortola 2010-04-21 13:54:39
啊,我誤解了這個問題!我道歉。 你最好的選擇(恕我直言)將是緩存然後。您不需要使用緩存中的集合來存儲對象,並可以依賴用戶特定的數據作爲檢索其對象的關鍵。 – Krisc 2010-04-21 14:01:18
但隨着緩存將持續在連接之間,不是嗎?我想保留它只是爲了連接時間。 – vtortola 2010-04-21 14:17:42