2012-09-18 75 views
1

我一直在試圖解決這個問題2天,現在我還沒有能夠找到任何有用的網絡。奇怪的是,這曾經工作..! Web服務器(可惜我不記得確切的變化)上的一些設置更改後停止工作:(Web服務上的ASP.NET不同會話變量值

這裏是發生了什麼;

我有它的價值被設定一個aspx頁面上的隱藏字段到page_load(aspx.cs,codebehind)中的當前日期時間字符串(包括秒數),同時將該隨機值記錄到下一行中的會話變量中,並以相同的方法記錄下來

比(簡單地解釋一下)我把這個值發送到一個web服務,在這個web服務中,我檢查這個值是否與會話變量中存儲的值相對應。猜猜是什麼......不一樣!這曾經工作但不再是, t知道什麼改變或出錯了。由於此字符串的值是日期時間值(以秒爲單位),因此我可以看到此值「大部分時間」都在變化2秒。當我調試IIS上的代碼時(通過附加工作進程),我可以看到從會話恢復的值是從隱藏字段恢復的值後2秒鐘。

這是工作我的機器上,問題是,它不工作我自己能想到的替代品這一網絡服務器(Windows Server 2008 R2)

我知道有你可以提出替代方案,上方法也是如此,但我真的非常有興趣在這裏解決難題...

任何幫助,非常感謝。

謝謝。

編輯:在Page_Load中簡單的辦法

方法調用記錄vaiables

protected void addSecureString(string s) { 

     string secureS = "111" + s; 
     Session.Add("securestring", secureS); 
     hdnss.Value = Session["securestring"].ToString(); 

} 

上的Web服務

addSecureString(System.DateTime.Now.Second.ToString()); 

方法

string tocheck = Session["securestring"]; 

hdnss - >在 頁注意隱藏字段的ID:我正因爲該日期時間的秒值部分的事項和改變..

+1

您是將兩個值都設置爲System.DateTime.Now()還是將單獨變量設置爲System.DateTime.Now(),然後將這兩個值分配給?這可能很簡單。 –

+0

:)一個單獨的字符串變量在1點獲取日期時間值,然後將隱藏字段和會話變量分配給該字符串值 –

+0

這值得一試:)。 Web站點和Web服務是否在同一個應用程序中? Web服務如何從網站中的會話變量讀取值? –

回答