Mam ten problem. Próbowałem wszystkiego. ValidateRequest = „false” .. i dekodowania i kodowania html .. itp itd ..Potencjalnie niebezpieczna wartość Request.Form została wykryta przez klienta
Co potrzebne jest okno podręczne (tak im przy ModalPopupExtender) zaprezentować użytkownikowi, gdzie ludzie mogą wpisać ustawienia xml i kliknij przycisk ok/cancel, aby zamknąć popup i zapisać.
Jednak ja ciągle otrzymuję ten błąd „Potencjalnie niebezpieczne wartość Request.Form wykryto od klienta” ..
Oto mój kod testu poniżej (krótki przykład mojego scenariusza i błędów) ..
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication1.WebForm1"
ValidateRequest="false" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<div>
<asp:Panel ID="Popup" runat="server" Width="800px" Style="display: none;">
<asp:LinkButton ID="Display" runat="server" Style="display: none;" OnClick="Display_Click" />
<cc1:ModalPopupExtender ID="ModalPopupExtender" runat="server" TargetControlID="Display"
PopupControlID="Popup" DropShadow="false" Y="10" />
<div id="Item">
<div class="Item">
<table width="100%">
<tr>
<td>
<textarea id="txtAreaValue" cols="35" rows="6" style="resize: none;" runat="server" />
</td>
</tr>
<tr>
<td>
<asp:Button ID="btnOk" Text="Ok" SkinID="default" Width="50px" runat="server" />
<asp:Button ID="btnCancel" Text="Cancel" SkinID="default" Width="50px" OnClick="BtnCancel_Click"
runat="server" />
</td>
</tr>
</table>
</div>
</div>
</asp:Panel>
</div>
</form>
</body>
</html>
Code Behind:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace WebApplication1
{
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
ModalPopupExtender.Show();
string str = "<?xml version=\"1.0\" encoding=\"utf-8\"?><XmlConfig xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\"> <XmlConfig Type=\"TEST\" DefiningXpath=\"/PERSON/NAME\"><Index Name=\"Name\" XPath=\"/PERSON/NAME/VALUE\" Type=\"String\" /><Index Name=\"Id\" XPath=\"/PERSON/NAME/ID\" Type=\"String\" /> </XmlConfig></XmlConfig>";
txtAreaValue.InnerText = str;
}
protected void Display_Click(object sender, EventArgs e)
{
//Shows the Item detail Edit box
ModalPopupExtender.Show();
}
protected void BtnCancel_Click(object sender, EventArgs e)
{
ModalPopupExtender.Hide();
}
}
}
aby uruchomić kod ref .. Dodaj do AjaxControltoolkit.dll a następnie uruchomić i widać textarea jest wypełniona xml. Kliknij przycisk Anuluj, co spowoduje błąd. Czy ktoś może mi pomóc?
Sprawdź to http: // stackoverflow.com/questions/2673850/validaterequest-false-doesnt-work-in-asp-net-4 – mikey
możliwy duplikat [Potencjalnie niebezpieczna wartość Request.Form została wykryta przez klienta] (http://stackoverflow.com/questions/ 81991/a - potencjalnie niebezpieczna-wartość-żądania-wykryto-od-klienta) –
Dzięki mikey :-) Udało się .. Dzięki nie mogę uwierzyć, że to było takie proste .. – user929153