2012-03-23 62 views
0

我需要一種將IErrorHandlers HandleError方法傳遞給用戶輸入數據的方法。在IErrorHandler實現中使用創建全局變量

當服務被調用時,我想設置一個會話變量(或類似會話變量的東西)用用戶數據填充它。 然後運行服務方法,如果IErrorHandler捕獲到錯誤。在我的HandleError方法中,我希望能夠從「會話變量」中獲取數據,然後刪除會話變量。

我能夠設置一種方法來填充會話變量,但是這個變量在傳遞我的ErrorHandler類時返回null。

Process(Order o) 
{ 
    HttpContext.Current.Session["InputData"] = o; 

有人能幫助我解決這個問題嗎?

回答

0

由於所有這些都發生在同一個請求中,所以您不應該需要會話變量。

嘗試使用所需的數據創建服務類的非靜態成員。在服務操作開始時進行設置。如果IErrorHandler確定該服務發生錯誤,那麼它應該能夠檢索該值。

+0

公共類OrderService:IOrderService {公共無效SetSession(對象值) { } 公共對象的getSession() { 返回NULL; } – 2012-03-26 13:19:20

+0

這些方法無法在位於相同名稱空間的ErrorHandler類中訪問。我不知道爲什麼? – 2012-03-26 13:22:47

+0

當你試圖訪問它們時,錯誤是什麼? – 2012-03-26 14:58:10