• 1399/04/31

عمل نکردن AllowHtml :

سلام وقت بخیر ، صفت AllowHtml  که قبلا به مدل اضافه کرده بودم بعد از اضافه کردن یک فیلد جدید دیگه کار نمی کنه البته تمام صفت های دیگه این فیلد هم از کار افتاد وخطای زیر رو میده:
A potentially dangerous Request.Form value was detected from the client (Text="<p>ggggggggggg</p>
").

Description: 

ASP.NET has detected data in the request that is potentially dangerous because it might include HTML markup or script. The data might represent an attempt to compromise the security of your application, such as a cross-site scripting attack. If this type of input is appropriate in your application, you can include code in a web page to explicitly allow it. For more information, see http://go.microsoft.com/fwlink/?LinkID=212874.

Exception Details: 
System.Web.HttpRequestValidationException: A potentially dangerous Request.Form value was detected from the client (Text="<p>ggggggggggg</p>
بعد از چند بار تست کردن و انجام  migration و آپدیت دیتا بیس متوجه شدم که مشکل از این صفت هست. به این صورت که بعد از اضافه کردن این صفت هم صفت های دیگه این فیلد غیر فعال میشه و هم خودش هیج اثری نداره، البته من sql server رو ارتقاء دادم به نسخه 2019. ممکنه مشکل از دیتا بیس باشه؟ ممنون میشم راهنمایی کنید، با تشکر.
مدل:


using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Web.Mvc;

namespace DataLayer
{
   public class Education
   {
       [Key]
       public int EducationID { get; set; }

       [Display(Name = "عنوان")]
       [Required(ErrorMessage = "لطفا{0} را وارد کنید")]
       [MaxLength(350)]
       public string Title { get; set; }
       [Display(Name = "توضیحات مختصر")]
       [Required(ErrorMessage = "لطفا{0} را وارد کنید")]
       [MaxLength(500)]
       [DataType(DataType.MultilineText)]
       public string ShortDescription { get; set; }
       [Display(Name = "متن")]
       [Required(ErrorMessage = "لطفا{0} را وارد کنید")]
       [DataType(DataType.MultilineText)]
       [AllowHtml]
       public string Text { get; set; }
       [Display(Name = "آدرس مطلب")]
       [Required(ErrorMessage = "لطفا{0} را وارد کنید")]
       [MaxLength(350)]
       public string Address { get; set; }

       [Display(Name = "نام فایل")]
       [MaxLength(50)]
       [Column(TypeName = "VARCHAR")]
       public string FileName { get; set; }
       [Display(Name = "تصویر پیش نمایش ")]
       [MaxLength(50)]
       [Column(TypeName = "VARCHAR")]
       public string VideoPreviewImageName { get; set; }
       [Display(Name = "تعداد بازدید")]
       public int? View { get; set; }

       [Display(Name = "تاریخ ثبت")]
       [DisplayFormat(DataFormatString = "{0: yyyy:MM:dd}")]
       public DateTime CreateDate { get; set; }
       public virtual ICollection<EducationTags> ProductTags { get; set; }
       public virtual ICollection<EducationSelectedGroups> EducationSelectedGroups { get; set; }
       public virtual ICollection<EducationComments> EducationComments { get; set; }
       public virtual ICollection<UserFavorit> UserFavorits { get; set; }
       public Education()
       {
       }
   }
}

 

  • 1399/04/31
  • ساعت 16:55

سلام 

میتونید ValidationInputs رو برای اون اکسن false کنید 

عنوان خطا رو سرچ کنید نمونه کدش میاد


  • 1399/05/01
  • ساعت 14:39

سلام مرسی


logo-samandehi