我一直在試圖解決這個問題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:我正因爲該日期時間的秒值部分的事項和改變..
您是將兩個值都設置爲System.DateTime.Now()還是將單獨變量設置爲System.DateTime.Now(),然後將這兩個值分配給?這可能很簡單。 –
:)一個單獨的字符串變量在1點獲取日期時間值,然後將隱藏字段和會話變量分配給該字符串值 –
這值得一試:)。 Web站點和Web服務是否在同一個應用程序中? Web服務如何從網站中的會話變量讀取值? –