PDA

View Full Version : سوال: امکان وارد کردن کد html در یک کنترل



Shamot
جمعه 07 بهمن 1390, 13:47 عصر
سلام دوستان!
من یک پروژه ای رو دارم طراحی می کنم که در آن نیاز دارم که کد html را از کاربر گرفته و یک سری تغییرات انجام بدهم و همین طور کد را در یک TextBox به نمایش بگذارم.
اما با ورود یک کد و یا نمایش دادن یک کد این خطا می آید:

Server Error in '/' Application.
A potentially dangerous Request.Form value was detected from the client (ctl00$ContentPlaceHolder1$TBXImport="<!--Code--><div alig...").
Description: Request Validation has detected a potentially dangerous client input value, and processing of the request has been aborted. This value may indicate an attempt to compromise the security of your application, such as a cross-site scripting attack. To allow pages to override application request validation settings, set the requestValidationMode attribute in the httpRuntime configuration section to requestValidationMode="2.0". Example: <httpRuntime requestValidationMode="2.0" />. After setting this value, you can then disable request validation by setting validateRequest="false" in the Page directive or in the <pages> configuration section. However, it is strongly recommended that your application explicitly check all inputs in this case. For more information, see http://go.microsoft.com/fwlink/?LinkId=153133.

Exception Details: System.Web.HttpRequestValidationException: A potentially dangerous Request.Form value was detected from the client (ctl00$ContentPlaceHolder1$TBXImport="<!--Code--><div alig...").

Source Error:

[No relevant source lines]


Source File: c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temp orary ASP.NET Files\root\a72d798b\91f9555e\App_Web_zw3qua0i.1.cs Line: 0

Stack Trace:

[HttpRequestValidationException (0x80004005): A potentially dangerous Request.Form value was detected from the client (ctl00$ContentPlaceHolder1$TBXImport="<!--Code--><div alig...").]
System.Web.HttpRequest.ValidateString(String value, String collectionKey, RequestValidationSource requestCollection) +8730676
System.Web.HttpRequest.ValidateNameValueCollection (NameValueCollection nvc, RequestValidationSource requestCollection) +122
System.Web.HttpRequest.get_Form() +114
System.Web.HttpRequest.get_HasForm() +8896047
System.Web.UI.Page.GetCollectionBasedOnMethod(Bool ean dontReturnNull) +97
System.Web.UI.Page.DeterminePostBackMode() +69
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +8431
System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +253
System.Web.UI.Page.ProcessRequest() +78
System.Web.UI.Page.ProcessRequestWithNoAssert(Http Context context) +21
System.Web.UI.Page.ProcessRequest(HttpContext context) +49
ASP.supportus_aspx.ProcessRequest(HttpContext context) in c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temp orary ASP.NET Files\root\a72d798b\91f9555e\App_Web_zw3qua0i.1.cs :0
System.Web.CallHandlerExecutionStep.System.Web.Htt pApplication.IExecutionStep.Execute() +100
System.Web.HttpApplication.ExecuteStep(IExecutionS tep step, Boolean& completedSynchronously) +75


Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.1

ممنون اگر پاسخ دهید.

programer-ir
جمعه 07 بهمن 1390, 14:52 عصر
کاربر وقتی امکان ارسال کدهای اچ تی ام ال رو داشته باشه می تونه کدهایی رو وارد کنه که باعث نمایش یک سری اطلاعات حیاتی می شود برای همین asp اجازه نمایش رو نمی ده و اگر می خوایید این کار رو کنید تنظیمات وب کانفیگ رو عوض کنید

parvizwpf
جمعه 07 بهمن 1390, 15:58 عصر
به تگ page بالای صفحه
validateRequest="false"
اضافه کن.

Shamot
جمعه 14 بهمن 1390, 16:40 عصر
کاربر وقتی امکان ارسال کدهای اچ تی ام ال رو داشته باشه می تونه کدهایی رو وارد کنه که باعث نمایش یک سری اطلاعات حیاتی می شود برای همین asp اجازه نمایش رو نمی ده و اگر می خوایید این کار رو کنید تنظیمات وب کانفیگ رو عوض کنید

بی زحمت میشه بگید دنبال چی باید بگردم؟

Shamot
جمعه 14 بهمن 1390, 16:41 عصر
به تگ page بالای صفحه
validateRequest="false"
اضافه کن.

این کارو کردم. ولی جواب نداد.

programer-ir
جمعه 14 بهمن 1390, 18:07 عصر
<pages validateRequest="false" > </pages>
<httpRuntime requestValidationMode="2.0" />


set in webconfig