Fix Lỗi "A potentially dangerous Request.Form value was detected from the client"
<system.web>
<httpRuntime requestValidationMode="2.0" />
</system.web>
lỗi kiểu như sau :
A potentially dangerous Request.Form value was detected from the client (ctl00$CC$txtnoidung="<p>dotnet.vn</p>"

erroreditor.gif
Để khắc phục bạn có thể làm theo cách dưới đây:
Chú ý, cách này không áp dụng cho .NET framework 1.0

Bước 1: 
Hủy bỏ request validation trên trang bạn đang làm việc bằng thuộc tính ValidateRequest="false" trên phần khai báo <%@ Page ...
Ví dụ 
<%@ Page Language="C#" AutoEventWireup="false" Codebehind="MyForm.aspx.cs" Inherits="Proj.MyForm"%>
thay bằng
<%@ Page Language="C#" AutoEventWireup="false" Codebehind="MyForm.aspx.cs" Inherits="Proj.MyForm" ValidateRequest="false"%>

Bạn có thể khai báo trên file web.config để áp dụng cho toàn website, tuy nhiên cần chú ý nếu làm theo cách này. Khai báo của bạn trong web.config sẽ có dạng
<system.web>
<pages validateRequest="false" /> 
</system.web>

Bước 2: 
Để hiển thị mã html trên trang web bạn cần chuyển đổi các ký tự của html ví dụ "<" thành "&lt;" bằng hàm HttpUtility.HtmlEncode hoặc Server.HtmlEncode
Và mã lệnh của bạn có dạng
MyLabel.Text = HttpUtility.HtmlEncode(MyTextBox.Text)

Chú ý: cách này áp dụng cho .NET Framework 1.1, .NET Framework 2.0 và .NET Framework 3.5,

Đối với .NET Framework 4.0 (Visual Studio 2010), bạn cần thực hiện thêm 1 bước nữa là thêm thẻ httpRuntime vào web.config trong thẻ system.web với thuộc tính requestValidationMode="2.0"
Khai báo của bạn trong web.config sẽ có dạng
<system.web>
<httpRuntime requestValidationMode="2.0" />
</system.web>

Nguồn bài viết: Dngaz.com


10/15/2018 11:33:53 PM