2010-09-21 46 views
4

我在頁面指令中放入了ValidateRequest =「false」,但頁面的行爲像是不回發。如果我刪除了HTML,那麼它會回傳正常。在asp.net文本框中允許使用html

使用更新面板中的文本框不應該有所作爲吧?

我試圖用html格式在我的數據庫中存儲文本。

同樣,我正在使用更新面板。

+0

你說的「不工作」是什麼意思?當你在字段中輸入尖括號時,你沒有得到「這個頁面可能包含等等」異常? – harpo 2010-09-21 23:24:44

+0

我沒有得到任何錯誤,當我點擊保存按鈕又名回發,頁面就像我沒有點擊它,但如果我拿出HTML括號它保存數據。這可能是因爲我正在使用更新面板。 – 2010-09-21 23:28:07

回答

7

您可能在幕後出現錯誤。如果你拿出更新面板,你會看到一個不錯的YSOD?

如果這是一個.Net 4.0應用程序,您需要更改Web配置以允許不安全的字符,即使您將ValidateRequest設置爲false。

的必需改變看起來是這樣的: <httpRuntime requestValidationMode="2.0" />

+0

是的,我拿出更新面板,然後得到ysod。謝謝。 – 2010-09-21 23:52:59

+1

+1。這是一個惡魔般的變化,要求你選擇退出兩個不同的地方,以擺脫完全錯誤的功能,不能使不安全的應用程序安全,只給出一個已經安全的應用程序, 。 – bobince 2010-09-22 19:57:20

2

顯然你需要把<httpRuntime requestValidationMode="2.0" />放在web.config中才能使用頁面指令中的ValidateRequest特性。