当前位置: 首页 > 知识库问答 >
问题:

一个或多个实体的验证失败。

舒俊雄
2023-03-14

当我尝试更新IsApproved=true以批准该属性时,出现以下错误。一个或多个实体的验证失败。有关更多详细信息,请参阅“EntityValidationErrors”属性。验证错误是:请上传图片。;请选择一些属性功能。请帮帮我。提前准备好。我的模型如下:

[Table(“AddProperty”)]公共类AddProperty{[Key,DatabaseGenerated(DatabaseGeneratedOption.Identity)][HiddenInput(DisplayValue=false)]公共int-Id{get;set;}

    public List<TransactionType> TransactionType_List { get; set; }//Used to populate dropdown list values

    [Required(ErrorMessage = "Please select the category.")]
    [Display(Name = "Category:")]
    public int TransactionTypeId { get; set; }//Used to post back selected value

    public virtual TransactionType TransactionType { get; set; }

    public List<PropertyType> PropertyType_List { get; set; }//Used to populate dropdown list values

    [Required(ErrorMessage = "Please select the property.")]
    [Range(1, int.MaxValue, ErrorMessage = "Please select the property.")]
    [Display(Name = "Property:")]
    public int PropertyTypeId { get; set; }//Used to post back selected value

    public virtual PropertyType PropertyType { get; set; }

    public List<PropertyList> PropertyList_List { get; set; }//Used to populate dropdown list values

    [Required(ErrorMessage = "Please select the property type.")]
    [Range(1, int.MaxValue, ErrorMessage = "Please select the property type.")]
    [Display(Name = "Property Type:")]
    public int PropertyListId { get; set; }//Used to post back selected value

    public virtual PropertyList PropertyList { get; set; }

    [Required(ErrorMessage = "Property Name is required.")]
    [StringLength(50, MinimumLength = 3, ErrorMessage = "Building Name length should be between 3 and 50.")]
    [Display(Name = "Property Name:")]
    public string PropertyName { get; set; }

    public List<FlatDescription> FlatDescription_List { get; set; }//Used to populate dropdown list values

    [Required(ErrorMessage = "Description is required.")]
    [Display(Name = "Description:")]
    public int FlatDescriptionId { get; set; }

    public virtual FlatDescription FlatDescription { get; set; }

    public List<Bathroom> Bathrooms_List { get; set; }//Used to populate dropdown list values

    [Required(ErrorMessage = "No of Bathrooms is required.")]
    [Display(Name = "No of Bathrooms:")]
    public int BathroomId { get; set; }//Used to post back selected value

    public virtual Bathroom Bathroom { get; set; }

    public List<City> City_List { get; set; }//Used to populate dropdown list values

    [Required(ErrorMessage = "Please select the city.")]
    [Display(Name = "City:")]
    public int CityId { get; set; }//Used to post back selected value

    public virtual City City { get; set; }

    [Required(ErrorMessage = "Location is required.")]
    [StringLength(30, MinimumLength = 3, ErrorMessage = "Location length should be between 3 and 30.")]
    [Display(Name = "Location:")]
    public string Location { get; set; }

    [Required(ErrorMessage = "Property Price is required.")]
    [Range(typeof(decimal),"1","10000000",ErrorMessage = "Please enter valid property price.")]
    [RegularExpression(@"^\d+.\d{0,2}$", ErrorMessage = "Only 2 decimal point values are allowed.")]
    [Display(Name = "Enter Property Price:")]
    public decimal PropertyPrice { get; set; }

    //[Required(ErrorMessage = "Please upload the image.")]
    [Display(Name = "Upload Image:")]
    [NotMapped]
    [ValidatePhoto]
    public HttpPostedFileBase PropertyPhoto { get; set; }

    public string ImageURL { get; set; }

    public List<Facilities> Facilities_List { get; set; }//Used to populate dropdown list values

    [Required(ErrorMessage = "Please select some property features.")]
    [Display(Name = "Select Property Features:")]
    [NotMapped]
    public int[] SelectedIds { get; set; }//Used to post back selected value   

    public string PropertyFeatures { get; set; }

    [HiddenInput(DisplayValue = false)]
    public DateTime CreateDate { get; set; }

    [HiddenInput(DisplayValue = false)]
    public DateTime? UpdateDate { get; set; }

    [HiddenInput(DisplayValue = false)]
    public int CreateUser { get; set; }

    [HiddenInput(DisplayValue=false)]
    public int? UpdateUser { get; set; }

    [HiddenInput(DisplayValue = false)]
    public bool IsApproved { get; set; }

    [HiddenInput(DisplayValue = false)]
    public bool IsActive { get; set; }             
}

共有1个答案

汪栋
2023-03-14

使用这个来跟踪错误:

catch (DbEntityValidationException e)
{
    foreach (var eve in e.EntityValidationErrors)
    {
        Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:",
            eve.Entry.Entity.GetType().Name, eve.Entry.State);
        foreach (var ve in eve.ValidationErrors)
        {
            Console.WriteLine("- Property: \"{0}\", Error: \"{1}\"",
                ve.PropertyName, ve.ErrorMessage);
        }
    }
    throw;
}
 类似资料:
  • 问题内容: / mysite / project4 详细信息和用户位于同一模块中,即/ mysite / project1在我定义的project1模型中 当我同步数据库时,出现错误提示 这怎么解决.. 谢谢.. 问题答案: 哎呀,我们只有这个。我回答… 您有许多django无法为其生成唯一名称的外键。 您可以通过在模型中的外键字段定义中添加“ related_name”参数来提供帮助。例如: 看

  • 首先,我已经阅读了Hibernate——一个包含多个实体的表?。 然而,我希望将两个实体映射到同一个表,但我希望它们都是实体,我可以从中选择。我的意思是: 一个表:人(id、姓名、出生日期、城市、街道、邮政编码)。 两个实体:人(id、name、dateOfBirth)、地址(id、城市、街道、邮政编码)。 实体之间是1:1的关系,但数据库中仍然是1个表。 如果我在上面的链接中使用建议的解决方案(

  • 这是我之前问题的扩展。我实现了Dennis R的答案,并且正在使用。有没有办法要求在json请求中指定一个或另一个字段,但不能同时指定两个?从我之前的帖子中,在Request类中,我希望用户传入id或代码,但不能同时传入。 我发现这个资源对我来说可能是正确的解决方案,但我不完全理解那里发生了什么,为什么它有效,坦率地说,它看起来太冗长了。这是唯一的方法吗?

  • 我需要一个用户管理服务为我的Spring启动项目。我一般了解DTO(数据传输对象)在Spring的使用。但是当我考虑设计服务时,我只对一个“用户”模型使用多个DTO,如UserDTO、注册用户DTO、更新用户DTO、管理用户DTO...UserDTO就像一个只读数据(带有用户名、电子邮件、姓名的输出数据),用于显示用户信息。但是注册用户DTO就像一个输入数据(带密码,确认密码为新用户创建密码),用

  • 问题内容: 我正在使用JPA 2.0 /hibernate验证来验证我的模型。我现在遇到一种情况,必须验证两个字段的组合: 该模型是无效的,如果都和都null和其他有效。 如何使用JPA 2.0 / Hibernate执行这种验证?使用简单的注释,两个吸气剂都必须为非null才能通过验证。 问题答案: 对于多属性验证,应使用类级别的约束。摘自 Bean Validation Sneak Peek第

  • 我有一个h:form,它围绕着p:tabView。在选项卡中,每个输入元素都有一个p:message。 我发表了以下意见。 1) 问题:验证仅在已激活的选项卡中执行 > 如果我切换到编辑模式并且当前选项卡没有验证错误并且我没有更改选项卡,那么我的实体将被保存并且其他选项卡上的验证错误将被忽略。 如果我切换到编辑模式并导航到有验证错误的选项卡,然后导航到没有验证错误的第一个选项卡,则会显示验证错误(